감이 잡히지않아 질문드립니다! 특정 Project게시판에는 관리자만 작성하도록 하려면
145
작성한 질문수 19
관리자인증 데코레이터는 작성했는데
articleapp의 forms.py를 수정해야하는지 model을 수정해야할지...
아니면 Project CreationView에 get_queryset 으로 해당 프로젝트pk에 글을쓸때 권한인증을 해야할지 도무지 감이 잡히지않아 질문드립니다
그리고 get_queryset을 사용하면 프로젝트게시판을 만들때 프로젝트모델이 아닌 get_queryset안의 내용만 적용되나요?
답변 1
1
안녕하세요.
질문 확인했습니다.
일단 get_queryset 을 사용하면 어떻게 되는지 말씀 드리겠습니다.
사용하게 되면, 프로젝트 객체들 전체에 대해서 CRUD 패턴을 적용하는 것이 아닌,
해당 queryset 내부의 객체들만 적용할 수 있게 됩니다.
말씀하신 그대로죠.
model = Project
라고 적어놓는 것은,
따로 설명드리지는 않았지만 get_queryset 으로 변경하면
def get_queryset:
return Project.objects.all()
과 같은 효과를 가집니다.
그렇다면 filter 와 같은 메서드를 통해 적용될 객체 범위를 조절할 수도 있겠죠.
그리고 만약 특정 게시판에 관리자만 게시글을 작성하는 기능을 만들려면,
여러가지 방법이 있을 수 있겠죠.
특정 ID 를 가진 게시판에 게시글을 작성하려 하면,
해당 유저가 관리자인지 is_superuser 혹은 is_staff 등의 값으로 인증하는 과정을 만들수도 있을것이구요.
이때 구현하는 내용은 form_valid 메서드에 포함시킬수도,
decorator 내부에 작성할 수도 있을 것 같습니다.
아니면 애초에 관리자만이 접근할 수 있는 게시판을 Project 라는 앱에 포함시키지 않고,
별도의 앱으로 분리하는 방법도 가능하겠죠.
물론 게시판 한두개만 그런식으로 관리하려면 조금 귀찮은 일이 되겠지만,
Project 앱의 로직을 너무 복잡하게 만들고 싶지 않다면 이런 방법도 가능할 것 같습니다.
답변이 도움이 되셨길 바랍니다.
좋은하루 보내시구요!
감사합니다-
강의에 나왔던 js 파일이 깃허브에 없습니다
1
79
1
모바일 디버깅, 반응형 레이아웃 4분48초 질문
0
57
1
decorator 관련질문입니다.
0
63
1
PasswordChangeView
0
104
2
로그아웃뷰 작동 관련 (2025년 3월)
1
138
1
실행에러질문
0
159
1
@login_required 데코레이터 사용시 리다이렉트는 어디서 참조하여 설정을 하는걸까요?
0
116
1
CacheBackend 관련 에러
0
181
1
21강 CreateView를 통한 회원가입 구현 질문
0
325
1
53강 disallowedhost
0
346
2
502 Bad Gateway
0
474
0
mariadb 접근권한 오류
0
545
1
logout 후 빈 화면으로 이동합니다 ㅠㅠ
0
461
2
로그아웃 후 빈 화면으로 이동
0
333
1
서버 운영 관련 질문 드립니다.(Unable to retirve...)
0
232
1
static/base.css파일을 인식을 못합니다
0
381
1
안녕하세요 19강 디버깅 설정 질문있습니다.
0
291
1
프로필 update편 질문있습니다.
0
380
1
수업질문
0
395
1
COOP error
0
531
1
61강 Dockerfile error
0
598
1
static안에 base.css 에서 정의한 클래스가 적용되지 않습니다.
0
491
1
static 파일 중 jpg 파일만 로드 불가
0
419
1
58강 static 파일 적용 안됨
0
547
1





