31강
model을 DB에 반영시켜주는 작업 = python manage.py makemigrations
python manage.py migrate
view에서 ProfileCreateView를 설정을하고 template파일에서 profileapp을 만들고 안에 create.html을 만듦
profile에 user.id가 없어서 난 오류를
def form_valid(self, form):
emp_profile = form.save(commit=False)
temp_profile.user = self.request.user
temp_profile.save()
return super().form_valid(form)
서버내에서 구현하는 것으로 해결함
32강
update profile구현
이미지가 있으면 enctype="multipart/form-data 를 사용해줘야 오류가 나지 않는다
view에서 update class를 선언해주고 templates의 profile.html을 만들어 줬다.
사진의 링크만 가져오고 이미지를 보여주려면 urls.py에서 + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 를 쳐줘야한다.
미디어에 관련한 세팅===
decorate설정을 그대로 가져와준뒤 user.id대신 profile.user로 설정.
33강
프로필을 수정하고 접속하는 주소가 메인 보다는 계정으로 보내고 싶은데 view에서 hello_world를 detail로 바꾼다고 해서 적용이 되는건 아니다.
get success url로 수정을 해야한다.
def get_success_url(self):
return reverse('accountapp:detail', kwargs={'pk': self.object.user.pk})