본문 바로가기
Django

[기초 프로젝트1-1]Django 프로젝트 생성하기

by 새우하이 2019. 11. 12.

우선 프로젝트 폴더를 생성하고 생성된 폴더 내에서

Django 기본 환경을 세팅한다


1. 가상 환경 생성

 

python이 설치되어있다는 전제하에

python -m venv [가상 환경 이름]

$python -m venv myvenv

 


2. 가상 환경의 실행

 

Window

$source [가상 환경 이름]/Scripts/activate

$source myvenv/Scripts/activate

UNIX계열

$source [가상 환경 이름]/bin/activate

$source myvenv/bin/activate

종료는 deactivate


3. Django 설치

 

source 가상 환경/bin/activate로 가상 환경을 실행한 상태에서

$pip install django

$pip install django //설치
$pip uninstall dajgno //삭제

설치가 완료되었으면

$python -m django --version

으로 버전 확인이 가능


4. 프로젝트 생성

이제 다음 명령으로 프로젝트를 생성한다

$django-admin startproject [프로젝트명]

$django-admin startproject mysite

 

이제 디렉터리의 구조를 보면

├── mysite

│   └── mysite

└── myvenv

mysite가 

상위 디렉터리와 하위 디렉터리의 구조로 생성되어있는데

상위 디렉터리에 있는 mysite는 프로젝트 관련 디렉터리/파일을 모으는 역할만하는 디렉터리이다

- 헷갈리므로 디렉터리명을 변경해도 된다


5. django 서버 실행

 

cd [프로젝트명]

방금 생성한 프로젝트 디렉터리로 이동

$cd mysite

이동했을 때

mysite/  << 현재 위치

├── manage.py

└── mysite

 

의 구조로 되어있는 것을 확인할 수 있다.

 

(manage.py : Django 프로젝트와 다양한 방법으로 상호작용 하는 커맨드 라인의 유틸리티입니다. 상세정보는 https://docs.djangoproject.com/ko/2.2/ref/django-admin/)

 

 

django-admin and manage.py | Django 문서 | Django

Django The web framework for perfectionists with deadlines. Overview Download Documentation News Community Code Issues About ♥ Donate

docs.djangoproject.com

$python manage.py runserver

서버 실행해보면

이런 경고를 띄워준다

 

migrate는 데이터베이스에 변경사항이 있을 때 이를 반영해주는 명령인데

데이터베이스 테이블을 만들지도 않았는데 이러는 이유는

 

장고는 모든 웹 프로젝트 개발 시 사용자와 사용자의 권한 그룹 테이블이 반드시 필요하다는 가정하에 설계되어서 그렇다고 한다.

그러므로  Ctrl + C로 서버 실행을 중단하고

$python manage.py migrate

Operations to perform:

  Apply all migrations: admin, auth, contenttypes, sessions

Running migrations:

  Applying contenttypes.0001_initial... OK

  Applying auth.0001_initial... OK

  Applying admin.0001_initial... OK

  Applying admin.0002_logentry_remove_auto_add... OK

  Applying admin.0003_logentry_add_action_flag_choices... OK

  Applying contenttypes.0002_remove_content_type_name... OK

  Applying auth.0002_alter_permission_name_max_length... OK

  Applying auth.0003_alter_user_email_max_length... OK

  Applying auth.0004_alter_user_username_opts... OK

  Applying auth.0005_alter_user_last_login_null... OK

  Applying auth.0006_require_contenttypes_0002... OK

  Applying auth.0007_alter_validators_add_error_messages... OK

  Applying auth.0008_alter_user_username_max_length... OK

  Applying auth.0009_alter_user_last_name_max_length... OK

  Applying auth.0010_alter_group_name_max_length... OK

  Applying auth.0011_update_proxy_permissions... OK

  Applying sessions.0001_initial... OK

 

하는 화면이 뜨고 

$python manage.py runserver

다시 서버를 실행하면

잘 실행된다

이제 웹브라우저를 켜서

로컬 주소:8000

http://127.0.0.1:8000/ 에접속해보면

 

일단 성공

댓글