Skip to content

ydhwa/pysite

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pysite

환경

  • Python 3.7.3

라이브러리

  • django
  • psycopg2
    • 2.8.x
  • django-enumfield
  • django-ipware

구현 기능

  • 회원
    • 회원 가입
    • 정보 수정
    • 로그인 / 로그아웃
  • 방명록
    • 글 목록 조회
    • 글 남기기
    • 글 삭제하기
  • 게시판
    • 글 목록 조회
      • 페이지네이션 구현
      • 비회원이 게시글 리스트 조회, 게시글 상세 조회 모두 가능
    • 글 열람하기
      • 글 목록으로 돌아갈 경우 해당 글을 클릭했던 페이지로 이동
    • 글 남기기
      • 답글일 경우 자신이 남겼던 글을 쉽게 확인할 수 있도록 글 쓰기 이전에 위치했던 리스트로 이동함
    • 글 수정하기
      • 글 수정 시 자신이 수정한 글을 쉽게 확인할 수 있도록 '글 목록'을 눌렀을 때 수정한 글이 위치했던 페이지로 이동할 수 있도록 처리함
    • 글 삭제하기
      • 삭제 대상 게시글을 비활성화로 돌리고, 다르게 표시시킴
      • 삭제 대상 게시글을 열람하려고 할 경우 게시판 메인 페이지로 이동함
      • 게시글 삭제 후 삭제한 게시글이 있던 페이지로 이동

이전 구현과 달라진 점

  • 게시판 비회원도 게시글을 열람할 수 있음
    • 단, 작성, 수정, 삭제는 불가능
    • 이전에는 로그인 페이지로 리다이렉트 됐다면, 이번에는 게시판 메인 페이지로 리다이렉트 됨
  • 조회수 처리
    • 기존 세션에 저장했던 방식에서 데이터베이스에 저장하는 방식으로 변경
      • 계정이 아니라 IP에 대해 검사함
      • 하루가 지나면 다시 카운팅됨
  • 페이지 초과에 따른 처리
    • 페이지 1보다 이전 페이지로 이동하려고 할 때 게시판 메인 페이지로 리다이렉트
    • 최대 페이지보다 다음 페이지로 이동하려고 할 때 마지막 페이지로 이동
  • 검색 기능
    • 전체 열람 시에는 삭제된 게시글도 나오지만, 키워드 검색 시 삭제된 게시글은 나오지 않도록 함
  • 페이지 번호 1부터 차례대로 부여. 정렬 순서는 최근에 올린 글 순서(계층 고려함)

아쉬운 점

  • 답글이 어떤 게시글에 대한 답글인지 확인할 수 있는 컬럼(parent)을 따로 만들고 이에 대한 정보를 타이틀에서 보여줬다면 편의성이 증가하지 않았을까 싶다.
  • enum 타입을 models에서는 사용했지만 template language에서는 제대로 사용하지 못했다. (결국 정수형으로 처리)
  • 삭제, 답글 작성, 수정, 게시글 상세 조회 시 기존에 있던 페이지로 이동시키기 위해 뒤에 파라미터를 붙였는데, 이것 때문에 너무 조잡해진 것 같다.

과제 제출 이후 추가구현

  • 190616
    • 에러페이지 구현. 소스를 읽어들이지 못하는 문제가 발생하여 일단 비활성화 시켜둠
  • 190617
    • 부트스트랩 이용하여 템플릿 꾸미기

About

190620 mysite Django로 옮기기

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published