zoukankan      html  css  js  c++  java
  • LoginRequiredMixin类的使用

    一、utils

    1. 单独创建一个 utils 包, 在包内创建 mixin.py 文件

    二、mixin.py

    1. 编写一个 LoginRequiredMixin 继承 object 

    2. 重写 as_view(cls, **initkwargs) 类方法, 对父类的 as_view 进行一层的封装

    1 from django.contrib.auth.decorators import login_required
    2 
    3 
    4 class LoginRequiredMixin(object):
    5     @classmethod
    6     def as_view(cls, **initkwargs):
    7         view = super(LoginRequiredMixin, cls).as_view(**initkwargs)
    8         return login_required(view)

    三、views.py

    1. UserOrderView 视图类使其继承 LoginRequiredMixin 类和 View 

    2. 先从 LoginRequiredMixin 类中调用 as_view() 方法,而后又会在该类中向他的父类 View 中调用 as_view()

     1 from django.shortcuts import render
     2 from django.views.generic import View
     3 from utils.mixin import LoginRequiredMixin
     4 
     5 
     6 class UserOrderView(LoginRequiredMixin, View):
     7     """用户中心-订单页"""
     8     def get(self, request):
     9         """显示订单页"""
    10         return render(request, 'user_center_order.html', {'page': 'order'})
  • 相关阅读:
    MarkDown 语言简单使用
    开机自启宽带连网设置问题
    JqueryEasyUI EasyLoader
    JqueryEasyUI $.Parser
    FileUpload一键自动上传
    Git读档
    JavaScript typeof运算符和数据类型
    JavaScript 函数 (function)
    Javascript 对象(Object)
    JavaScript 数组(Array)
  • 原文地址:https://www.cnblogs.com/mxsf/p/10297201.html
Copyright © 2011-2022 走看看