Miner

Vue.js - Django 연동 웹 프로그래밍(2) 본문

Django

Vue.js - Django 연동 웹 프로그래밍(2)

MineTime76 2023. 11. 29. 17:53

8. User 모델 커스터마이징

 

* (3) Abstract User 클래스를 상속받는 방식으로 인증 테이블을 만들어보겠다.

 

1. 인증 테이블이 소속될 애플리케이션을 만든다. 

account / models.py
account / admin.py
settings.py 에 추가

2. 마이그레이트 해준다

 

에러가 뜨는 이유는 장고가 제공하는 유저 인증 테이블이 있는 상태에서 새로운 인증 테이블을 만들었기 때문에

인증테이블을 만들려면 초기에 작업을 해줘야 한다. 정확하게는 최초 마이그레이트 명령 이전에 인증 테이블을 만들어야 한다. ---> sqlite3 파일을 지우고 다시 시작해야 한다. 

데이터베이스 스키마가 확정이 되기 전까지는 sqlite3 을 사용하고 확정이 되면 mysql 이나 postgresql을 사용한다. 

user 모델 지정하는 방법
Fapp / models.py

9. Settings.py 분리하기

왜? - 개발 과정에서 settings.py 파일과 개발이 끝나고 나서 소스를 운영 서버에 배포하는 경우에 settings.py 파일이 달라지기 때문

 

장고 배포에 관련된 내용 - https://docs.djangoproject.com/en/4.2/howto/deployment/checklist/

 

Django

The web framework for perfectionists with deadlines.

docs.djangoproject.com

 

바꿔야 하는 4가지

@Secret Key, Debug, Allowed Host, Database

 

그래서, config 폴더에 settings 패키지를 만들고 

settings 폴더에 base.py, develop.py, product.py 를 만들고

  • base.py 에는 공통 항목들을 넣고
  • develop.py 에는 개발 모드에서만 필요한 항목들
  • product.py 에는 운영 모드에서만 필요한 설정 항목들을 넣는다. 

기존에 settings.py 를 이름을 base.py로 이름을 바꿔준다.

BASE_DIR 을 바꿔준다

4개의 항목을 develop.py로 옮겨준다

product.py 에는 ALLOWED_HOSTS 에 elasticbeanstalk 을 사용하고 database 아마존의 RDS 서비스에 MYSQL 엔진을 사용한다고 가정

settings.py 파일을 호출하는 부분

 

개발 모드에서는 manage.py 파일에서 호출을 해주고 운영 모드에서는 wsgi.py 파일에서 호출한다.

 

manage.py 수정
wsgi.py 수정

10. 프로젝트 뷰 만들기

 

 

비주얼 스튜디오 코드로 이동
터미널을 열고 실행
vuetify 설치
vuetify 설치 완료

* vuetify 란?

 

plugins - vuefity.js 파일
package.json 파일