
$ python3 -m pip install django
django-admin 이라는 명령을 이제 부터 사용 할 수 있다.$ django-admin startproject <PROJECT_NAME> <PATH>
$ cd example_django
$ django-admin startproject my_project .
위와 같은 파일 및 디렉토리가 생성된다.
urls.py: 접속을 처리하는 라우팅 기능을 한다.settings.py
manage.py에서 option으로 runserver를 준다.$ python3 manage.py runserver [PORT]
<PORT>에 할당하고 싶은 PORT를 입력한다.8888포트 할당$ python3 manage.py runserver 8888$ django-admin startapp <APP이름>
myapp 생성

그림 출처: 생활코딩
1)project 에 urls.py 에서 요청을 처리해서, 각 2)app의 urls.py로 넘겨주고 3)원하는 파일의 함수로 던져줄 수 있다.
1)project 에 urls.py 에서 client가 어떻게 접근하는지에 따라 handling해보자.
# myproject/urls.py
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('myapp.urls'))
]
client에서 admin/이 아닌 경우로 접속들어올 경우.
myapp/urls.py = include('myapp.urls')
여기에 사용하는 app을 명시한다.
접근에 따라 views.py 라는 모듈에서 각각 index 함수, create 함수, read 함수를 연결시킨다.

# myapp/urls.py
from django.urls import path
from myapp import views
urlpatterns = [
path('', views.index),
path('create/', views.create),
path('read/<id>/', views.read)
]
views를 사용하는데, 그럼 myapp/views.py에서 어떻게 Response할까?
# myapp/views.py
from django.shortcuts import render, HttpResponse
def index(request):
return HttpResponse('Welcome')
def create(request):
return HttpResponse('Create')
def read(request, id):
return HttpResponse('Read!'+id)
$ python3 manage.py runserver




from django.shortcuts import render, HttpResponse
import random
def index(request):
return HttpResponse('<h1>Random</h1>'+str(random.random()))


<li><a href="link">title</a></li>
<ol>
{ol}
</ol>

<li><a href="link">title</a></li>
<ul>
{ol}
</ul>














request.POST를 찍어보자.
request.POST['title']request.POST['body']

django의 project 디렉토리에서 사용하는 app을 설정할 수 있다.
여기에 사용하는 app을 명시한다.ALLOWED_HOST(허용할 호스트)를 지정할 수 있다.ALLOWED_HOSTS = ['IP' or 'DNSNAME']
ALLOWED_HOSTS = [ 'localhost' ]라고 지정하고,

127.0.0.1:8000으로 접근불가능하다.
$ python3 manage.py runserver
$ python3 manage.py runserver IP:PORT

ALLOWED_HOST에 host의 dns name혹은 ip를 명시한다.ALLOWED_HOSTS = ['markyang.com']
$ python3 manage.py runserver 0.0.0.0:8585

datatable.html
templates이다!