采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
我发现as_view方法会调用一个叫dispatch的方法
这个dispatch好像是判断request的方法是否存在或者被允许的方法。
我们这样继承这个类,是否等于重构了dispatch方法,效果等于就是在运行dispatch方法的时候加上一个验证登录的装饰器,原本的dispatch方法就没用了。
这样是否会影响我们项目的运行?还是本来原本的dispatch就是个可有可无的方法,设计来就是为了重构的?麻烦老师有空帮我解答一下这个问题。谢谢
先说一下我自己理解的思路:
验证登陆的装饰器只能在函数或者方法上使用,所以老师新创建了LoginRequiredMixin类,并在dispatch方法上使用了验证登陆的装饰器;
回答你的问题:
我们这样继承这个类,是否等于重构了dispatch方法?原本的dispatch方法就没用了
当然有用
return super(LoginRequiredMixin, self).dispatch(request, *args, **kwargs)
这个就是返回原来的dispatch方法
还有装饰器常常用与不改变函数或方法内的代码,进行添加功能,(可能我有说的不对的地方,欢迎指出,谢谢)
谢谢,我之前对super函数和装饰器理解有问题。
登录后可查看更多问答,登录/注册
【毕设】Python 2.7到3.6 完美适配,Django升级2.0
15.3k 81
864 4
1.7k 22
1.5k 20
购课补贴联系客服咨询优惠详情
慕课网APP您的移动学习伙伴
扫描二维码关注慕课网微信公众号