我是django的新手,我很困惑Django中的@login_required
和@method_decorator(login_required)
有什麼區別,我們應該使用哪一個。提前致謝。在django中@login_required和@method_decorator(login_required)有什麼區別
0
A
回答
2
使用@login_required
使用基於函數的觀點:
@login_required
def my_view(request):
return HttpResponse('hello')
您可以使用@method_decorator(login_required)
與基於類的意見,
@method_decorator(login_required, name='dispatch')
class MyView(TemplateView):
template_name = 'hello.html'
@method_decorator(login_required)
def dispatch(self, *args, **kwargs):
return super(MyView, self).dispatch(*args, **kwargs)
但它可能是簡單的使用LoginRequiredMixin
代替:
from django.contrib.auth.mixins import LoginRequiredMixin
class MyView(LoginRequiredMixin, TemplateView):
template_name = 'hello.html'
2
method_decorator裝飾器將函數裝飾器轉換爲方法裝飾器,以便它可以用於實例方法。
login_decorator是一個函數裝飾器,因此它只能用在視圖函數中。
相關問題
- 1. @method_decorator with login_required and permission_required
- 2. method_decorator login_required不起作用?
- 3. 爲什麼我需要用@method_decorator裝飾login_required裝飾器
- 4. 錯誤login_required django
- 5. Django。 TestCase的login_required
- 6. Django @login_required丟棄https
- 7. Django @login_required裝飾器
- 8. Django - 查看JSON login_required
- 9. Django中的login_required裝飾器和urlresolver.reverse()
- 10. @login_required裝飾在Django 1.1和Template_name
- 11. django @login_required修飾符錯誤
- 12. django login_required裝飾器ViewDoesNotExist
- 13. Django - login_required不重定向
- 14. Login_Required Django不能使用FormView
- 15. 在django中用login_required定義兩個login_url
- 16. Django的消息框架和login_required
- 17. @login_required和is_authenticated() - 何時使用Django?
- 18. django的login_required沒有得到匹配
- 19. @login_required在Django裏面的函數
- 20. Django的新手:嘗試在login_required()裝飾
- 21. login_required裝飾
- 22. @login_required在Django中沒有像預期的那樣工作?
- 23. 有條件地在Django中應用login_required裝飾器
- 24. django login_required裝飾器外部視圖
- 25. 的Django-CMS login_required不起作用
- 26. django @login_required裝飾器超級用戶
- 27. 如何使用django login_required方法
- 28. @login_required導致問題
- 29. django中Model.id和Model.pk有什麼區別?
- 30. Django和Python有什麼區別?