본문 바로가기

웹개발

게시판(flask)-관리자 글 삭제 권한

관리자 권한은 아주 간단하게 구현했는데, read링크에

isadmin = session['username'] == 'admin'

이렇게 isadmin 변수를 추가하고 read.html파일로 보내준다.

{% if iswriter or isadmin %}
<a href="{{ url_for('delete', id=post.id) }}" onclick="return confirm('정말 삭제하시겠습니까?');">삭제</a>
{% endif %}

{if iswriter %}
<a href="{{ url_for('edit', id=post.id) }}">수정</a>
{% endif %}

그리고 이런식으로 구조를 바꾸면 관리자일 때는 삭제 버튼이 활성화된다.

회원가입할 때 이메일뿐만 아니라 username도 중복체크를 하기 때문에 username이 admin일 때 관리자로 판단한다.

그리고 delete링크 처리 부분에서도 

isadmin = session['username'] == 'admin'

if username in data or isadmin:

이런 코드를 넣으면 정상적으로 처리가 가능하다.