작정하고 Django (31) - profileapp 구현 시작

김의찬·2023년 5월 19일

작정하고 Django !

목록 보기
31/45

DB에 모델 반영

python manage.py makemigrations 를 입력하여 모델을 DB에 반영시켜준다.

profileapp view 작성

create.html 생성

profileapp 에서 templates 폴더를 작성하고 거기서 또 profileapp 폴더를 작성한 뒤
accountapp 에서 사용한 create.html을 복사해서 사용한다.

url 작성

profiles/create가 올바르게 실행된 모습

admin mypage에서 profiles/create로 갈 수 있는 경로 만들어주기

accountapp 에 detail.html 에서

코드를 작성한다.

target_user의 profile 이 존재한다면 target_user의 닉네임을 보여줄 것이고
존재하지 않다면, Create Profile 글을 작성하고 profile을 만드는 페이지로 이동시켜주는 코드이다.

profile 생성

profile 을 생성하기 위해 이미지 파일을 첨부하고 nickname과 message를 입력했는데 다음과 같은 This field is required 라는 오류가 발생한다.

이를 해결하기 위해서

create.html에서

form 을 수정한다.

``

`` 다음과 같이 입력하면 이미지 파일을 받을 수 있는 상태가 된다.

하지만 user_id 가 없다는 오류가 발생하는데 이는 우리가 forms.py를 작성할 때 fileds를 image, nickname, message 만 작성했기 때문이다.
이는 서버의 보완과의 문제가 있는데 이를 해결하기 위해서

다음과 같이 form_valid 를 작성해야한다.

해결 후 nickname이 나오는 결과화면.

profile
김의찬입니다

0개의 댓글