login_required decorator为整个应用程序的网址

时间:2015-05-20 11:17:45

标签: django django-views django-urls

我有url(r'^manager/', include('manager.urls'))我希望只有登录用户才能访问它。所以,我试着写url(r'^manager/', login_required(include('manager.urls'))),但它会抛出

TypeError at /manager/

'tuple' object is not callable

是否有其他方法可以实现它,还是应该为@login_required中的每个视图编写manager.views.py装饰器?

1 个答案:

答案 0 :(得分:0)

login_required是一个装饰器,意味着它需要一个函数,而include()函数则返回一个url元组。

作为一个简单的解决方案,我建议您在文件managers.url中的每个网址上应用装饰器。

否则请查看Best way to make Django's login_required the default