반응형
[ Decorators ]
[ Decorators ]
<django.views.decorators.http>
# user_passes_test
: 지정 함수가 False를 반환하면 login_url로 redirect
<django.contrib.auth.decorators>
# login_required
: 로그아웃 상황에서 login_url로 redirect
# permission_required
: 지정 퍼미션이 없을 때 login_url로 redirect
<django.contrib.admin.views.decorators>
# staff_member_required
: staff member가 아닐 경우 login_url로로 이동
---------------------------------------------
[ Decorators Attribute ]
# require_http_methods,
# require_GET, require_POST, require_safe
예)
: @login_required(require_GET)
<함수 구현>
@login_required
def protected_view(request):
return render(request, 'myapp/secret.html')
<클래스 구현>
@method_decorator(login_required, name='dispatch')
class PostListView(ListView):
model = Post
paginate_by = 10
post_list = PostListView.as_view()
# class PostListView(LoginRequireMixin, ListView):
# @method_decorator 사용하지않고 위와같이 사용할 수도 있다.
---------------------------------------------
'기술정리 > Django' 카테고리의 다른 글
Django 안정적인 마이그레이션 방법 (0) | 2024.04.06 |
---|---|
Django 효율적인 대량 데이터 마이그레이션 방법 (0) | 2024.04.05 |
Django Instagram Project 2 (0) | 2022.11.20 |
Django Instagram Project 1 (0) | 2022.11.14 |
Django Class기반 View (0) | 2022.10.10 |