https://www.youtube.com/watch?v=alrLd9T96aA
인터넷을 통해 설치후, 명령 프롬프트 창에서 python 이라고 입력해서 확인하기
pip install virtualenv
virtualenv myenv
cd myenv 가상환경 파일위치로 가기
cd scripts 스크립트로 들어가기
activate.bat 가상환경으로 들어가기
여기서 만드는 것이 밖에있는 곳과 다른 가상환경에 영향을 주지 않음, 이 환경 내에서만 영향
pip install Django 가상환경에서 장고 설치
import django 장고 설치 확인
https://www.youtube.com/watch?v=9WctwW_Pe1o
python -m django --version 저번에 만들었던 가상환경에서 파이썬과 장고 설치 확인
django-admin startproject mysite 원하는 위치로 가서 mysite라는 프로젝트 만들기
비주얼 스튜디오 코드에서 에디터툴에 방금 생성한 프로젝트 추가
안에는 다양한 파일 존재
manage.py: 장고 프로젝트와 다양한 방법으로 상호작용 하는 커멘드라인의 유틸리티
init.py: 파이썬으로 하여금 이 디렉토리를 패키지처럼 다루라고 알려주는 용도의 단순한 빈 파일
setting.py: 현재 장고 프로젝트의 환경 및 구성을 저장
urls.py: 현재 장고 프로젝트의 url선언을 저장
wsgi.py: 현재 프로젝트를 서비스하기 위한 WSGI호환 웹 서버의 진입점
1.클라이언트(사용자)가 웹서버에 요청
2.WSGI는 웹서버와 장고프레임워크를 연결하는데 사용
3.request(요청)
4.사용자가 특정주소를 요청하는데 URL파일에서 요청한 주소를 구조에 맞게나눔=Parsing(구문 분석)
5.나눈 주소는 역할에 맞게 view로 이동(view에는 웹 어플리케이션에
각각 맞는 작업을 하기위한 코드 존재(데이터베이스 작업,pdf를 만들기 위한 작업 등등))
6.디자인담당인 Template으로 이동
7.사용자는 response(응답)을 받음
8.이후 화면을 볼 수 있음
py manage.py runserver 서버 구동, 이후 아래에 나오는 주소로 서버 구동 여부 확인 가능, 개발서버는 오직 개발목적으로만 사용해야함
앱과 프로젝트의 차이
앱은 특정한 기능을 수행하는 웹 어플리케이션,
프로젝트는 이런 특정 웹 사이트를 위한 앱들과 각 설정들을 묶어놓은 것
py manage.py startapp polls 투표를 담당하는 앱
views. py 에 뷰 작성
def index(request):
return HttpResonse("Hello world.)
urls.py 파일 생성후 코드 작성
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
]
최상위 URLconf(mysite에 있는 urls.py)에 연결, include함수를 사용하여 다른 URLconf를 연결
from django.contrib import admin
from django.urls import include, path
urlpatterns = [
path('polls/', include('polls.urls')),
path('admin/', admin.site.urls),
]
서버를 구동하여 정상적으로 작동하는지 확인
py manage.py runserver
127.0.0.1:8000/polls/ 에 들어가서 확인
이번 내용은 저번에 했던 내용과 비슷한 부분이 많고 설치과정이 있어서 모르는 부분은 특별히 없었다. 대신 장고 사이클에서 웹서버에 대해 궁금해서 웹서버에 대해 찾아보았다.
과정
구글에 "웹서버" 검색, 이후 나온 2개의 사이트를 통해 숙지
https://0ver-grow.tistory.com/134
https://dataonair.or.kr/db-tech-reference/d-lounge/expert-column/?mod=document&uid=52353