当前位置: 首页 > news >正文

零基础做地方门户网站桂林旅游网页设计

零基础做地方门户网站,桂林旅游网页设计,济宁seo营销,wordpress微言中间件验证码富文本缓存 1. 中间件AOP 中间件#xff1a;是一个轻量级的#xff0c;底层的插件#xff0c;可以介入Django的请求和响应过程#xff08;面向切面编程#xff09; ​ 中间件的本质就是一个python类 ​ 面向切面编程#xff08;Aspect O… 中间件验证码富文本缓存 1. 中间件AOP 中间件是一个轻量级的底层的插件可以介入Django的请求和响应过程面向切面编程 ​ 中间件的本质就是一个python类 ​ 面向切面编程Aspect Oriented Programming简称AOP。AOP的主要实现目的是针对业务处理过程中的切面进行提取它所面对的是处理过程中的某个步骤或阶段以获得逻辑过程中各部分之间低耦合的隔离效果。 ​ 中间件可实现功能   - 统计   - 黑名单   - 白名单   - 反爬   - 界面友好化捕获异常 1.1 中间件的可切入点   1.2 切入函数 __init__:   没有参数服务器响应第一个请求的时候自动调用用户确定是否启用该中间件 process_request(self,request):   在执行视图前被调用每个请求上都会调用不主动进行返回或返回HttpResponse对象 process_view(self,request,view_func,view_args,view_kwargs) 调用视图之前执行每个请求都会调用不主动进行返回或返回HttpResponse对象 process_template_response(self,request,response):   在视图刚好执行完后进行调用每个请求都会调用不主动进行返回或返回HttpResponse对象 process_response(self,request,response):   所有响应返回浏览器之前调用每个请求都会调用不主动进行返回或返回HttpResponse对象 process_exception(self,request,exception):   当视图抛出异常时调用不主动进行返回或返回HttpResponse对象 1.3 自定义中间件 自定义中间件流程 1.在工程目录下创建middleware目录 2.目录中创建一个python文件 3.在python文件中导入中间件的基类 from django.utils.deprecation import MiddlewareMixin 4.在类中根据功能需求创建切入需求类重写切入点方法       class LearnAOP(MiddlewareMixin):           def process_request(self,request):               print(request的路径,request.GET.path) 5.启用中间件在settings中进行配置MIDDLEWARE中添加middleware.文件名.类名     2.验证码 在用户登录注册以及一些敏感操作的时候我们为了防止服务器被暴力请求或爬虫爬取我们可以使用验证码进行过滤减轻服务器的压力。 ​ 验证码需要使用绘图 Pillow pip install Pillow ​ 核心 Image,ImageDraw,ImageFont ​ 绘制流程 backgroundcolor (10,20,30)   RGB颜色 初始化画布   image Image.new(RGB,(100,50),backgroundcolor) 获取画布中画笔对象 draw ImageDraw.Draw(image) 绘制验证码随机四个       font ImageFont.truetype(path,size)       fontcolor (20,40,60)       draw.text((x,y),R,font,fontcolor) 最后扫尾 del draw       import io       buf io.BytesIO()       Image.save(buf, png)       return HttpResponse(buf.getvalue(),image/png)   3.富文本 富文本:Rich Text FormatRTF是由微软开发的跨平台文档格式大多数的文字处理软件都能读取和保存RTF文档其实就是可以添加样式的文档和HTML有很多相似的地方 ​ tinymce 插件 ​ django的插件 pip install django-tinymce ​ 用处大约有两种 1. 在后台管理中使用 2. 在页面中使用通常用来作博客 ​ 1.后台中使用: 配置settings.py文件 INSTALLED_APPS 添加 tinymce 应用 添加默认配置 TINYMCE_DEFAULT_CONFIG { theme:advanced, width:600, height:400, } 创建模型类       from tinymce.models import HTMLField       class Blog(models.Model):           sBlog HTMLField() 配置站点 admin.site.register ​       2.在视图中使用: 使用文本域盛放内容 form textarea/textarea /form   在head中添加script   script src/static/tiny_mce/tiny_mce.js/script   script       tinyMCE.init({           mode:textareas, theme:advanced,           width:800,height:600,       })   /script   4. Cache https://docs.djangoproject.com/zh-hans/2.0/topics/cache/ 缓存框架的核心目标 较少的代码 缓存应该尽可能快 因此围绕缓存后端的所有框架代码应该保持在绝对最小值特别是对于获取操作 一致性 缓存API应该是提供跨越不同缓存后端的一致接口 可扩展性 基于开发人员的需求缓存API应该可以在应用程序级别扩展 缓存 django内置了缓存框架并提供了几种常用的缓存 基于Memcached缓存 使用数据库进行缓存 使用文件系统进行缓存 使用本地内存进行缓存 提供缓存扩展接口 缓存配置 创建缓存表 python manage.py createcachetable [table_name] 缓存配置 CACHES {   default: {       BACKEND: django.core.cache.backends.db.DatabaseCache,       LOCATION: my_cache_table,       TIMEOUT: 60,       OPTIONS: {           MAX_ENTRIES: 300,       },       KEY_PREFIX: jack,       VERSION: 1,   } } 缓存使用 在视图中使用使用最多的场景 cache_page() time 秒 60*5 缓存五分钟 cache 缓存配置, 默认default key_prefix 前置字符串 缓存底层 获取cache from django.core.cache import cache cache cache[cache_name] 或 cache cache.get(cache_name) 设置cache from django.core.cache import cache cache.set(key, value, timeout) 使用原生缓存来实现 def get_user_list(request): ​   # 每次从缓存中获取   user_cache cache.get(user_cache) ​   # 如果有缓存则从缓存中直接取   if user_cache:       result user_cache ​   # 如果没有缓存则从数据库中获取   else:       # 模拟长时间的数据操作       user_list User.objects.all()       time.sleep(5)       data {           users: user_list,       }       # 使用模板渲染得到result文本       template loader.get_template(App/stu_list.html)       result template.render(data)                     # 设置缓存       cache.set(user_cache, result, 10) ​   return HttpResponse(result)  转载于:https://www.cnblogs.com/gugubeng/p/9723446.html
http://www.huolong8.cn/news/345328/

相关文章:

  • 网站建设分录怎么开八宿县网站seo优化排名
  • 专业的网站建设案例公司装修合同
  • 网站扫描怎么做门户网站与搜索引擎的区别
  • 做美陈3d模型网站模仿别人网站侵权
  • 北京康迪建设监理咨询有限公司网站6做熟食的网站美食网站
  • wordpress建娱乐站长沙seo推广
  • 文案交流网站建筑建设行业网站
  • 高中生做网站网页如何做网页设计
  • 2015网站建设广东省网站免备案表
  • muse cc 做网站怎么再贴吧给自己的网站做宣传
  • 网站建设与维护工作申请号的网站
  • 贵阳微网站建设公司哪家好百度推广怎么弄
  • 做摄影和后期的兼职网站猎头公司是啥意思
  • 郑州网站制作专业乐云seo著名营销成功案例
  • 菏泽网站建设效果wordpress怎么创建目录页面
  • 用虚拟机做网站服务器大众点评怎么做团购网站
  • 网站的劣势做优惠券网站赚钱吗
  • 农场会员营销网站建设wordpress 等级
  • 文明网站建设培训体会网站嵌入js
  • 好的网站建设商家wordpress theme 插件
  • 太原营销型网站建设河北建设工程招标协会网站
  • 网乐科技网站建设成都网络营销搜索推广优势
  • 青浦建设机械网站游戏网站开发毕业设计
  • 苏州华亭建设工程有限公司网站wordpress简约企业商城
  • 网站文章怎么做分享qq建站工具有什么用
  • 建设银行网站改手机号易居房产cms
  • 网站建设需要怎样的经营范围国内用react做的网站
  • 外贸网站推广计划江苏省宿迁市建设局网站首页
  • 如何网站开发语言公众号接入小程序
  • 烟台H5网站设计公司网站域名备案系统