이전 포스팅에서는 장고 개발 환경을 준비했었다. 이번 포스팅에서는 장고 프로젝트를 생성을 해볼 것이다. 장고에서 "프로젝트"는 하나의 웹 사이트를 의미하는데, 장고 프로젝트를 생성한다는 건 하나의 웹 사이트를 만드는 것과 같다. 프로젝트 내부에는 여러 개의 앱이 포함이 되고 앱들이 각각 독립적인 기능을 담당하게 되고, 이것들이 모여서 하나의 웹 사이트가 구성이 된다. 해보겠다.
장고 프로젝트 생성하기
1. 앞으로 장고 프로젝트가 여러개가 될 수 있기 때문에 프로젝트를 모아 둘 프로젝트 루트 디렉토리를 생성하겠다.
C:\>mkdir projects
C:\>cd projects
C:\projects>
이렇게 루트 디렉터리는 C:\project에 생성을 해줬고 해당 디렉터리로 이동해서 mysite 가상환경에 진입한다.
2. 루트 디렉터리는 C:\project에 생성을 해줬고 해당 디렉터리로 이동해서 mysite 가상환경에 진입.
C:\projects> C:\venvs\mysite\Scripts\activate
(mysite) C:\projects>
3. 장고 프로젝트를 생성
(mysite) C:\projects>cd mysite
(mysite) C:\projects\mysite>
(mysite) C:\projects\mysite>django-admin startproject config .
django-admin startproject config . 점 기호는 현재 디렉터리를 의미한다. 이 명령의 의미의 현재 디렉터리인 mysite를 기준으로 프로젝트를 생성하겠다는 의미이다. mysite 디렉터리 밑에는 장고가 필요로 하는 여러 디렉터리와 파일들이 생성된다.
4. 개발 서버 구동하고 웹 사이트에 접속해 보기
(mysite) C:\projects\mysite>python manage.py runserver
Watching for file changes with StatReloader
Performing system checks...
System check identified no issues (0 silenced).
You have 18 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
Run 'python manage.py migrate' to apply them.
January 15, 2025 - 19:39:22
Django version 5.1.5, using settings 'config.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CTRL-BREAK.
5. mysite 가상 환경에 간단히 진입하기
항상 mysite에 진입하려면 명령어 프롬포트를 실행하고 projects/mysite 디렉터리에 이동해서 긴 명령을 줘야한다. 그래서 이러한 관정을 한 번에 수행해주기 위해서 배치 프로그램을 만들어 귀찮음을 덜어봤다.
(mysite) 사용자@mac ~ % vi .zshrc
>> 들어가서 3번 명령어 추가해주고 저장해주기
allias mysite='cd /Users/사용자/projects/mysite;source /User/사용자/venvs/mysite/bin/activate'
(mysite) 사용자@mac ~ % source .zshrc
(mysite) 사용자@mac ~ % deactivate
가상환경에 쉽게 진입한 것을 확인할 수 있었다. 내일은 에디터를 이용해서 공부를 해볼 것이다.
'Programming > Python' 카테고리의 다른 글
[Python | Django] 장고 개발 흐름 정리하기 - 1 (0) | 2025.01.20 |
---|---|
[Python | Django] URL 과 뷰 (0) | 2025.01.19 |
[Python / Django] 파이썬 가상 환경 구성 (0) | 2025.01.15 |
[Python] Python 기반 웹 페이지 mariaDB로 생성한 데이터베이스 연동 (0) | 2025.01.15 |
[Python] 람다 함수 (0) | 2024.12.29 |