본문 바로가기
프로젝트/Django - How Dimt?

Django poj.c B15) 자유게시판 CRUD - 25일차

by Fola 2022. 5. 14.

Code B Django 15번 글, 프로젝트 25일차 (목)

 

(캡쳐) 자유게시판 - 새 글 작성

 

(캡쳐) 자유게시판 - 수정/삭제 버튼

 

 

1. CBV !!!

드디어 CBV를 제대로 활용했다

CreateView, DetailView(==Read 역할), UpdateView, DeleteView

-> CRUD 모두 Class Based View로 구현하는데 성공.

 

이제야 Django의 CRUD 가 어떻게 돌아가는지 큰 그림이 조금 보인다.

 

 

 

 

2. 아쉬운 점 (1)

CBV를 자유자재로 사용하진 못하고 있는 게, 

게시물 삭제 이후로 Delete 성공 메시지를 출력하고 싶었는데 잘 되지 않았다.

FBV로 만든 간단한 함수를 통해 Delete 성공 메시지를 담고 있는 html 파일로 연결하는 방법으로 해결했다.

 

 

 

 

3. 아쉬운 점 (2)

삭제, 수정 이후 자유게시판으로 돌아갔을 때

페이지네이션의 어느 페이지에서 넘어왔든 간에 무조건 첫 페이지로 돌아가는 문제점이 있다.

 

FBV 였다면 페이지 넘버를 인자로 이어받아 게시판에 들어갈 때 페이지 넘버를 GET으로 던지는 방법을 사용했을 텐데

CBV를 작동시킬 때 정의된 Model의 pk를 넘겨주는 것 외에 다른 정보를 넘기는 방법을 아직 찾지 못하고 있다. 

 

 

 

 

4. 만족스러웠던 점

게시판 글을 열었을 때 현재 접속한 유저와 글쓴이가 같을 경우에만 수정/삭제 버튼이 보이게 만든 점

 

삭제 버튼을 눌렀을 때 부트스트랩의 Collapes 기능을 이용하여

레드 컬러의 삭제 확인 버튼이 부드러운 애니메이션처럼 등장하게 만든 점

 

 

 

 

5. CBV 가 잔뜩 들어간 free_talk/views.py 전체 코드

 

댓글