说我有以下方法
@staff_member_required
def foo(request):
return say_secret_hello(request)
def says_secret_hello(request):
#do secret stuff
return "hello
在urls.py
path("/hello", foo)
如您所见,我只向管理员公开了foo
。从安全角度来看,非管理员是否可以呼叫say_secret_hello()
?
答案 0 :(得分:1)
否,普通用户无法调用此函数,您还可以在视图中使用以下语法:
if request.user.is_staff:
#do some code
在模板中,您可以使用if语句:
{% if request.user.is_staff %}
Show some content
{% endif %}