본문 바로가기

Back-end/Django

Django Blog 만들기 - Part 8 : 유저 프로필

1. 한명의 유저에게 한개의 프로파일을 제공하도록 설정할 것이다

 

2. Users. Models.py 들어가준다.

-CASCADE : 유저가 삭제되면 프로파일도 같이 삭제된다.

-아래 코드를 작성해준다.

 

-models 수정해줄때마다 makemigration, migration 실행 해줘야한다.

 

-python manage.py makemigrations명령어를 실행해준다.  -에러

-pip install pillow 이미지를 관리하는 라이브러리를 설치해준다.

 

-다시 python manage.py makemigrations 실행해준다.

-python manage.py migrate 입력해준다.

 

3. Users.admin.py 들어가서 profile 등록해준다.

 

4. Python manage.py runserver 서버를 확인해준다.

 

5. Admin페이지에서 프로필을 추가해준다.

 

 

-유저를 선택해준다.

 

-이미지를 선택해준다 -> save해준다

 

6. 이미지를 어떻게 사이트에 액세스하는지 설명

 

-python manage.py shell 명령어로 shell 진입한다.

 

 

-user.profile.image.url 명령어를 실행하면 이미지의 위치를 알려준다.

 

-os.path.join = 어떤 오퍼레이터시스템을 사용하는 실행가능하게 해준다.

-BASE_DIR = 장고에서 제공하는 프로젝트로 기본 디렉토리

-midia = 디렉토리 이름

 

-url '/media/' = 업로드 파일 시스템이 위치한곳, 이미지를 업로드하면 media디렉토리 안에 프로파일을 생성할 것이다. 그리고 이미지를 그곳에 저장한다.

 

-profile_pics를 삭제해준다.

7. 아래 깃헙에서 Profile.html 복사해 users.profile.html 붙어넣어준다.

https://github.com/CoreyMSchafer/code_snippets/blob/master/Django_Blog/snippets/profile.html

 

 

아래 코드를 수정해준다.

Src = 이미지 저장 장소를 입력해준다.

 

 

-django_project.urls 아래 코드를 입력해준다.

 

 

 

8. 사이트로 들어가 프로필을 확인해 보자

 

 

9. 프로필 이미지를 아직 설정하지 않은 유저의 경우 / 프로필에 들어가서 이지에 오른쪽 마우스 클릭후 이미지의 위치를 확인한다.

 

 

 -django_project 파일에 media폴더를 찾는다

 

-원하는 프로필 사진을 media폴더로 넣어준다.

 

10. 아이디를 생성하는 유저에게 defult이미지를 부여하도록 설정해보자

-users.signals.py파일을 생성하자

 

-아래와 같이 코드를 입력해준다.

 

-users.apps.py에서 아래와 같이 코드를 입력해준다.

 

11. 서버에서 새로운 유저를 생성해 확인해준다.