HUFS Team 멤버들과 '페르소나'라는 사이트를 만들기로 했다.
영화. 드라마. 소설. 만화 같은 카테고리를 선택하고
자기가 원하는 작품을 선택해서
우리가 흔히 아는 mbti 테스트를 할 수 있는 사이트이다.
나는 Django로 백엔드를 담당하기로 했다.
지금까지 한 거라면, 노션과 slack을 이용해 협업 공간을 마련한 것.
erd를 작성한 것.
화면 구성을 짠 것(이건 pm이 프로젝트 기획할 때 하셨다)
일단 백엔드 팀끼리 구글 스프레드시트를 이용해서 api 문서를 작성했고, 프론트 팀원과 pm과 피드백을 진행했다.
api 에 대한 개념이 확실히 잡혀있지가 않아서 수정을 많이 했지만
그래도 api가 화면을 기준으로 나누는 거라는 게 이제 좀 와닿는다.
본격적으로 테이블 만들기전에 프로젝트 뼈대만 만들어놓으려고 한다.
persona라는 프로젝트를 만들어 놓고
persona_app 이라는 애플리케이션을 만들었다.
settings.py에
ALLOWED_HOSTS = ['locathost', '127.0.0.1']
를 설정해줬고
persona_app/apps.py 에 설정 클래스는 PersonaAppConfig로 정의되어 있어서
장고가 설정 클래스를 찾을 수 있도록 모듈 경로까지 포함해서 설정파일에 등록한다.
그 다음은 프로젝트에 사용할 데이터베이스 엔진을 설정해주려고 한다.
지금 장고 디폴트로 SQLite3로 되어있다.
MySQL을 사용할지, 뭐 다른 데이터베이스 엔진으로 변경할지 다시한번 얘기를 나눠 볼 것 같지만 일단 그대로 두어야 겠다.
그 다음엔 타임존 지정을 해줘야 겠다.
지금은 세계표준시(UTC)로 되어있는데 한국 시간으로 변경해주었다.
admin 페이지를 열려고 했는데 바로는 안됐다.
지금 테이블 코딩할 건 아니지만 기본테이블 생성을 위해서 migrate 명령을 먼저 해주어야 한다.
(원래는 데이터 베이스에 변경사항이 있을 때 반영해주는 명령어이다)
migrate 명령을 지금 해야할까?
장고는 웹 프로젝트 개발할때 사용자랑 그룹테이블이 필요하다는 가정하에 만들어져서
테이블 아직 내가 만들지 않았더라도 기본 테이블은 만들어줘야 한다.
아무튼 migrate 명령을 실행하자.
그러면 실행 결과로 SQLite3 데이터 베이스 파일인 db.sqlite3 파일이 생성된 것을 확인할 수가있다.
이제(migrate 먼저 안해서 막혔었던) admin 사이트에 들어가보자.
runserver을 실행한다.
이제 admin 사이트가 잘 들어가진다.
그럼 관리자(슈퍼유저) 를 만들어야 한다.
python manage.py createsuperuser
명령어를 쳐서 슈퍼유저를 만들었다.
그럼 admin 에 로그인을 해보자
근데 그러면 백엔드 같이 담당하는 팀원과 나는 admin 사이트를 어떻게 같이 운영할 수 있는거지?
나의 슈퍼유저 계정을 공유해서 쓰는건가?
협업을 어떻게 하는지는 한번 찾아봐야겠다.
이제 여기까지 했으면 테이블 정의(models.py 코딩) 부터 시작하면 될 것같다.
https://nerogarret.tistory.com/45
우리 프로젝트는 AWS로 배포하기로 했는데
여기 글을 읽어보니까 일단 프로젝트를 만들고, 깃허브에 올려서(깃허브로 협업하긴 할거다)
git clone으로 서버에 올릴 수가 있나보다.
이건 마지막에 해도 되긴하겠지만. 다음에 참고하려고 올린다.