-
[장고] 그룹, 퍼미션Python/초간단 장고 Django 2022. 9. 22. 23:11반응형
1. 장고에서 그룹을 설정과 권한 관리는 관리자 화면에서 가능하다.
2. 템플릿에서 권한 체크하는 법.
Check permission inside a template in Django
https://stackoverflow.com/questions/9469590/check-permission-inside-a-template-in-django# {% if perms.app_label.can_do_something %} {% if perms.account.add_email_address %} {% endif %}
관리자 화면에서 권한명을 확인.
공식 문서를 참고하자.
https://docs.djangoproject.com/en/4.1/topics/auth/default/#permissions3. 뷰 함수에서 권한 체크하는 법.
user.has_perm('account.add_email_address')
유저 개인의 권한을 체크하는 방법이다.
4. @login_required처럼 decorator로 그룹 권한을 체크할 수 있을까?
django group permission decorator로 검색해보니 다음 글을 찾을 수 있었다.
https://stackoverflow.com/questions/36177769/django-groups-and-permissions하지만 (최신 버전?의) 장고에서는 직접 데코레이터를 제공한다.
from django.contrib.auth.decorators import permission_required @permission_required('account.add_email_address', login_url="/login/") def foo(request): pass
https://docs.djangoproject.com/en/4.1/topics/auth/default/#the-permission-required-decorator
반응형