LoginRequired mixin
使用class-based views时,可以使用LoginRequiredMixin实现与login_required相同的行为。 此mixin应位于继承列表中最左侧的位置。
class LoginRequiredMixin
如果视图正在使用此mixin,那么根据raise_exception参数,未经身份验证的用户的所有请求将被重定向到登录页面或显示HTTP 403 Forbidden错误。
您可以设置AccessMixin的任何参数来自定义未授权用户的处理:
fromdjango.contrib.auth.mixinsimportLoginRequiredMixinclassMyView(LoginRequiredMixin,View):login_url='/login/'redirect_field_name='redirect_to'
注
就像login_required装饰器一样,这个mixin不会检查用户的is_active标志,但默认的AUTHENTICATION_BACKENDS拒绝不活动的用户。
老版的Django使用装饰器login_required来限制用户登录
新版的Dajngo通过继承LoginRequiredMixin类来限制用户登录,必须是第一个继承,在继承列表最左侧位置
class TestView(LoginRequiredMixin, View):
pass