본 내용의 코드는 전부 위 링크에 있으니 참고바랍니다
CRUD(Create, Read): Model 생성
1. models.py 작성 및 DB에 적용
# 모델 생성
python manage.py makemigrations
# DB 연동
python manage.py migrate
2. admin.py에 모델 등록
3. Admin 페이지(DB)에 접근 가능한 관리자 계정 생성
# 관리자 계정 생성
python manage.py createsuperuser
# 서버 실행
python manage.py runserver
* URL: 127.0.0.1:8000/admin/
CRUD(Create): View & Template 작성, URL 주소 지정
1. views.py에서 new 함수 작성
2. templates에서 new.html 작성
* enctype = "multipart/form-data" : 이미지 파일 업로드 시 필수 속성
* {% csrf_token %} : Django에서 CSRF 공격을 대처하는 방법
3. urls.py에서 주소 지정
* path(주소 이름, 함수 이름, name="주소 별칭")
CRUD(Read): View & Template 작성, URL 주소 지정
1. views.py에서 detail 함수 작성
* get_object_or_404(모델명, pk="id 값")
* pk 뜻: primary key
2. templates에서 detail.html 작성
3. urls.py에서 주소 지정
* <int: community_id>: detail 함수에 넘겨줄 인자
글 목록: View & Template 작성, URL 주소 지정
1. views.py에서 index 함수 작성
* .order_by("-created_at'): 최신순으로 목록 정렬
2. templates에서 index.html 작성
3. urls.py에서 주소 지정
댓글: Model 생성, View & Template 작성, URL 주소 지정
1. models.py에서 Comment 모델 생성
* makemigrations, migrate 잊지 말기
* admin.py에 모델 등록 잊지 말기
2. forms.py 생성 후 CommentForm 작성
3. views.py에서 comment 함수 작성
* is_valid(): 유효성 검사 method
4. detail.html에서 댓글 목록/작성 생성
5. urls.py에서 주소 지정
404 설정
404 page not found 란?
- 존재하지 않은 url을 입력했을 때 발생
- 클라이언트가 요청한 페이지를 서버가 찾을 수 없다는 응답
1. settings.py 설정: DEBUG 모드 변경 & Allowed_hosts 추가
2. views.py에서 page_not_found 함수 작성
* exception 매개변수는 오류의 내용을 담고 있는 변수
* 만약 오류의 내용을 화면에 보여주고 싶다면 exception의 값을 읽어서 화면에 보여줄 수 있음
3. templates에서 404.html 작성
4. urls.py에서 handler404 설정
* handler404 = '(앱이름).views.(함수 이름)'
'Django' 카테고리의 다른 글
Django로 커뮤니티 사이트 만들기 (5): PythonAnywhere 배포 (0) | 2023.09.18 |
---|---|
Django로 커뮤니티 사이트 만들기 (4): CRUD(Update, Delete) (0) | 2023.09.18 |
Django로 커뮤니티 사이트 만들기 (3): 회원가입/로그인/로그아웃 (0) | 2023.09.18 |
Django로 커뮤니티 사이트 만들기 (1): 세팅 (0) | 2023.09.17 |
Django로 커뮤니티 사이트 만들기 (0): 기본 개념 (0) | 2023.09.17 |