관리 메뉴

꿈 많은 사람의 이야기

파이썬 django로 todo list web 개발하기 - 1편. 프로젝트, 앱 생성 및 유저 생성 본문

python-django

파이썬 django로 todo list web 개발하기 - 1편. 프로젝트, 앱 생성 및 유저 생성

이수진의 블로그 이수진의 블로그 2019. 5. 20. 19:49

이번 포스팅 시리즈는 파이썬을 활용한 웹 개발입니다!

파이썬에서는 django라는 웹 개발 프레임워크가 있습니다.

정말 간단하게 사용할 수 있고 강력한 기능들이 적재되어 있어서 간단한 사이트 만들기에는 너무 좋습니다

 

장고를 가지고 만들 웹 사이트는 todo list를 만드는 app입니다

todo app은 할 일 리스트를 작성하는 app이죠

일종의 스케줄 관리라고 보시면 됩니다.

이 시리즈는 15편 정도 이어서 나오게 될 것입니다.

todo 게시판의 게시판 글 생성, 수정, 삭제, 우선순위 변경, 완료 체크

초반에는 pymysql을 활용한 db 연동에서 부터

최종적으로 python django restframework를 활용해서 restful api를 활용한 개발까지

글을 작성합니다!

 

시작하죠. 이번 포스팅은 django install과 프로젝트 생성, app 생성, admin 관리자 생성에 대해서 알아봅니다.

 

 

장고 설치는 간단합니다. pip install django를 설치하시면 되는데요

저는 django 2.1.2 버전으로 진행했습니다. 만약 django 2.1.2 버전으로 설치하시려면 pip install django==2.1.2를 입력하셔서 설치하시면 됩니다.

그리고 todo 게시판 이기 때문에 todoSubject라는 project 이름을 생성합니다.

django-admin startproject todoSubject

이러면 관련된 파일이

 

 

그렇게 하고나서 python manage.py runserver를 입력하면

장고 서버가 실행이 됩니다!

runserver를 통해 실행시킨 서버는 일종의 테스트 서버입니다.

실제 배포는 nginx와 uwsgi를 연동해서 진행하니 참고하세요!(본 시리즈에서는 nginx, uwsgi를 연동하지 않습니다)

 

 

 

그러면 위와 같이 localhost:8000에 들어가면 django the install worked successfully! congratulations!가 나오게 됩니다

자 이제 app을 만듭니다.

app은 말 그대로 application이므로 동작하는 하나의 app을 만들게 됩니다

여기서는 main과 todo list를 담당하는 board 2개가 필요합니다

 

 

python manage.py startapp todo_main

python manage.py startapp todo_board를 하면 간편하게 만들어집니다

 

 

그러면 위와 같이 디렉토리가 구성이 됩니다

todoSubject는 아까 저희가 startproject로 만들었던 것이구요. 여기에는 setting과 url 등 각종 설정을 합니다. 프로젝트 전체에 대한 설정이구요

그리고 todo_board와 todo_main은 저희가 app을 만들었던 것입니다.

 

 

디렉토리 전체 구조는 위와 같습니다. todoSubject에서는 settings.py가 보이죠

그리고 app에서는 view, model이 보입니다.

장고는 MTV 패턴을 가지고 있습니다. 여기서 M은 저 model이고 V는 view입니다

 

 

자 이제 본격적인 시작에 앞서 python manage.py migrate를 진행합니다.

데이터베이스를 적용시킬 때 진행하는 방법입니다.

만약 데이터 베이스가 추가되거나 설정이 바뀌면 make migrations를 통해 만들어주고 migrate를 해주면 됩니다

 

 

그리고 나서 다시 manage.py runserver를 합니다. 이후 주소를 localhost:8000/admin으로 들어가면 위와 같은 화면이 나옵니다. 여기는 슈퍼계정(관리자 계정)으로 들어가는 장소입니다.

그럼 저 화면에서 로그인이 가능하도록 관리자 계정을 만들어야겠죠?

 

 

python manage.py createsuperuser를 통해 관리자 계정을 생성합니다

 

 

그리고 나서 다시 로그인을 하면 위와 같은 화면을 볼 수 있습니다!

여기서 저 users를 보게 되면

 

이렇게 관리자 계정을 볼 수 있습니다.

이번 포스팅은 여기까지 입니다.

다음 포스팅은 페이지를 생성합니다.

templates 디렉토리를 만들어서 실제 페이지를 보이게 하겠습니다!

 

2 Comments
댓글쓰기 폼