如何指定除了Django中的视图之外的某处需要登录?

gct*_*gct 1 authentication django

所以我有一个名为stats的应用程序,它允许我以各种方式查询我的数据库并以JSON格式返回信息,因此我可以有一个很好的ajaxy仪表板用于绘图和可视化.我希望这个应用程序尽可能可重用,所以我不想在其视图上使用@login_required装饰器.但是,在我的情况下,我确实希望在查看任何应用视图之前需要登录.有没有办法在视图之外的某个地方执行此操作?

也许在我的网站的urls.py中有这样的东西?(我知道这不起作用,我正在寻找的一个例子)

urlpatterns = patterns('',
        (r'^stat/', include('stats.urls'), login_required), 
)
Run Code Online (Sandbox Code Playgroud)

Eug*_*zov 6

您可以urls.py通过以下方式为各个网址应用装饰器:

from django.contrib.auth.decorators import login_required
import views

(r'^stat/', login_required(views.index))
Run Code Online (Sandbox Code Playgroud)