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

福建省住房和城乡建设部网站怎么联系创意设计网站

福建省住房和城乡建设部网站,怎么联系创意设计网站,wordpress站内301,模板网站怎么优化接着上期代码框架#xff0c;6个主要功能基本实现#xff0c;剩下的就是细节点的完善优化了。 首先增加URL拦截器#xff0c;你不会希望没有登录用户就可以进入用户主页各种功能的#xff0c;所以增加URL拦截器可以解决这个问题。 Django框架本身也有URL拦截器#xff0…接着上期代码框架6个主要功能基本实现剩下的就是细节点的完善优化了。 首先增加URL拦截器你不会希望没有登录用户就可以进入用户主页各种功能的所以增加URL拦截器可以解决这个问题。 Django框架本身也有URL拦截器但是因为本系统用户模型跟Django框架本身用户模型不匹配所以没有用只好自定义URL拦截器。 第一步修改项目配置文件 ./mysite/mysite/settings.py: 自定义拦截器中间件放置位置很重要千万不能放错了不然无法生效。 将你的自定义拦截器中间件放置在内置的 SessionMiddleware和 AuthenticationMiddleware 之后并根据你的实际情况调整其他中间件的顺序。这样user 属性应该会被正确添加到请求对象中从而解决 WSGIRequest object has no attribute user 错误。MIDDLEWARE [django.middleware.security.SecurityMiddleware,django.contrib.sessions.middleware.SessionMiddleware,django.middleware.common.CommonMiddleware,django.middleware.csrf.CsrfViewMiddleware,django.contrib.auth.middleware.AuthenticationMiddleware,django.contrib.messages.middleware.MessageMiddleware,django.middleware.clickjacking.XFrameOptionsMiddleware,# 自定义拦截器study_system.custom_middleware.CustomURLInterceptorMiddleware,study_system.custom_middleware.CustomURLInterceptorMiddleware2, ] 第二步新增应用自定义URL拦截器 ./mysite/study_system/custom_middleware.py: import refrom django.shortcuts import redirect from django.utils.deprecation import MiddlewareMixin from django.urls import reverse自定义中间件中间件是一个面向对象的类有五个方法1、Request预处理函数process_request(self, request)运行时间在请求后在process_view 之前在执行views之前2、View预处理函数 process_view(self, request, callback, callback_args,callback_kwargs)运行时间在process_request之后在views之前3、Template模版渲染函数process_template_response()运行时间默认不执行只有在视图函数的返回结果对象中有render方法才会执行并把对象的render方法的返回值返回给用户注意不返回视图函数的return的结果了而是返回视图函数 return值对象中rende方法的结果4、Exception后处理函数process_exception(self, request, exception)运行时间这个方法只有在 request 处理过程中出了问题并且view函数抛出了一个未捕获的异常时才会被调用。这个钩子可以用来发送错误通知将现场相关信息输出到日志文件或者甚至尝试从错误中自动恢复。5、Response后处理函数process_response(self, request, response)运行时间这个方法的调用时机在 Django 执行 view 函数并生成 response 之后。该处理器能修改response 的内容一个常见的用途是内容压缩如gzip所请求的HTML页面通过中间件Middleware来实现自定义的 URL 拦截器。 中间件是 Django 处理请求和响应的组件可以对请求进行处理、拦截和修改# 中间件使用方法 # 方法1、 # -- 首先需要自定义类继承MiddlewareMixin类然后重写里面的5方法 # -- setting.py中配置自定义中间件类# 定义需要登录状态的匹配规则| 分隔要匹配的多个url从左到右匹配有匹配就返回匹配值否则返回None。 login_pattern r^(/study_system/home/?$|/study_system/task/|/study_system/item/|/study_system/user/)class CustomURLInterceptorMiddleware(MiddlewareMixin):def process_request(self, request):print(----------------1)Request预处理函数,重写方法# 我们可以通过request对象获取里请求里面的相关值request对象其实就是view function函数的request# 相关获取例如request.META、request.META[REMOTE_HOST]、request.pathprint(request.META[REMOTE_ADDR]) # 获取请求的远程地址path request.path # 拿到当前的请求路径# 如果 当前的请求路径h 的开始位置能够找到这个正则样式的任意个匹配就返回一个相应的匹配对象。# 如果不匹配就返回Nonematch re.search(login_pattern, path)if match: # 匹配成功print(request.user) # AnoymousUser即匿名对象未登录# 如果在判断请求user认证是否通过不通过的话我们就直接重定向到登录界面类似做了一层拦截访问# if not request.user.is_authenticated:if not request.session.get(username):return redirect(reverse(study_system:login))class CustomURLInterceptorMiddleware2(MiddlewareMixin):# 重写方法def process_request(self, request):print(-------------------2) 第三步运行测试查看效果 -------------------------------------------------end -------------------------------------------------
http://www.zqtcl.cn/news/151726/

相关文章:

  • 怎么查看一个网站页面的seo优化情况网站建站建设首选上海黔文信息科技有限公司2
  • 威海网站建设价格深圳优美网络科技有限公司
  • 做网站用什么系统建设网站投资多少
  • 凡科建站官网 网络服务抚顺 网站建设
  • 学校网站的建设方案西安企业seo外包服务公司
  • 建设租车网站深圳ww
  • 推广网络网站潜江资讯网一手机版
  • 凡科网站自己如何做毕设 做网站
  • 一起做网站逛市场百度权重查询网站
  • 专业网站优化推广网站核查怎么抽查
  • 牡丹江站salong wordpress
  • 网站建设公司做网站要多少费用有哪些外国网站国内可以登录的
  • 天津建站平台网页制作免费的素材网站
  • 建设网站需要专业哪个企业提供电子商务网站建设外包
  • 公司网站建设及维护网站建设思维
  • 那个网站可以学做西餐17做网站广州沙河
  • 品牌网站建设哪里好京东网站建设案例
  • 亚马逊海外版网站深圳市工商注册信息查询网站
  • 新乐做网站优化网站上漂亮的甘特图是怎么做的
  • 新网站应该怎么做seo品牌推广方案思维导图
  • 想要网站导航推广页浅谈中兴电子商务网站建设
  • 免费引流在线推广成都网站优化费用
  • 老河口市网站佛山市点精网络科技有限公司
  • word模板免费网站seo引擎优化是做什么的
  • 办网站怎么赚钱鄠邑建站 网站建设
  • 宜春网站建设推广微信小程序开发
  • 巴南城乡建设网站免费网站建设软件大全
  • 湖南网站建设公公司没有自己的网站
  • 刚建设的网站如何推广网站恢复正常
  • 怎么做制作网站的教程永久免费空间免备案