알쓸전컴(알아두면 쓸모있는 전자 컴퓨터)

Django start app 만들기 본문

Web /Django

Django start app 만들기

백곳 2017. 8. 5. 10:38

start app 만들기


시작은 일단 


가상환경 적용 입니다. 


$source ~/anaconda3/envs/djangotest/bin/activate djangotest


자신의 django 프로젝트 폴더에 들어 갑니다. 


$cd ~/mysite/


$ ./manage.py startapp polls


그러면 폴더가 생성 되며 

polls/

    __init__.py

    admin.py

    apps.py

    migrations/

        __init__.py

    models.py

    tests.py

    views.py

다음과 같은 폴더 구조를 가지게 됩니다. 


이제 첫번째 여기서 뷰는 사용자에게 보여주는 측면의 App을 작성 하는것이라고 생각 됩니다. 


이제 polls/view.py 파일을 열어 파이썬 코드를 입력 해줍니다. 



from django.shortcuts import render

# Create your views here.
from django.http import HttpResponse

def index(request):
	return HttpResponse("Hello ! world ")


위와 같이 코드를 작성해 줍니다. 


자세한 API는 추후에 1개씩 구조와 사용 기능에 대해서 알아보고 일단 튜토리얼을 따라 가면서 익숙해 지는것이 중요하다고 생각되어 


API는 어떻게 라는 질문 보다 일단 이렇게 쓰면 결과가 이렇게 나온다 라는 학습을 하겠습니다. 


API 구조를 일일이 다 따라가다보면 지쳐 버립니다. 


그때 그때 필요한 API 를 인자와 사용법만 알고 넘어 가겠습니다. 


위의 코드는 웹페이지에 접속할때 Hello ! world 라고 출력을 내어 주는것으로 생각 됩니다. 


polls/urls.py 파일을 생성해 줘야 합니다. 그이유는  mysite/mysite/urls.py 의 최상단 urls.py에게 polls/urls알려줘서 웹페이지 경로를 


설정 하기 위해서 입니다. 


그렇게 되면 파이썬에서는 URLconf 라는 녀석이 있는데 이녀석이 url 경로를 관리 합니다. 


ULRconf -> mysite/urls.py -> polls/urls.py


이렇게 경로를 알려주고자 하는것이 목적 입니다, 


polls/urls.py 을 생성하고 코드를 작성해 줍니다. 

from django.conf.urls import url 
from . import views

urlpatterns = [
	url(r'^$',views.index,name = 'index'),
]

위에서 '^$' 정규 표현식 입니다


정규 표현식은 정규 표현식 사이트 http://www.nextree.co.kr/p4327/  에 적당한 설명이 있으니 살펴 보시면 좋을것 같습니다.


다음은 mysite/urls.py 을 열어 수정해 줍니다. 

from django.conf.urls import include,url
from django.contrib import admin

urlpatterns = [
    url(r'^polls/',include('polls.urls')),
    url(r'^admin/', admin.site.urls),
]



위와 같이 

from django.conf.urls import include,url <-- 수정


url(r'^polls/',include('polls.urls')),  <-- 추가


추가해 줍니다.


$sudo service apache2 restart


apache 를 재시작 해줍니다. 재시작 전에는 수정 사항이 변경 되어 있지를 않습니다. 


기본 적인 app이 만들어 졌습니다. 


여기에서 부족한 설명은 


https://django-document-korean.readthedocs.io/ko/master/intro/tutorial01.html


여기서 부가 적인 내용을 살펴 보시면 더욱 이해도가 높아 질것 으로 생각 됩니다. 




'Web > Django' 카테고리의 다른 글

Anaconda 가상환경 spyder IDE 적용  (0) 2017.08.07
Django 데이터 베이스 설정  (0) 2017.08.05
Django 와 apache2 연동  (3) 2017.08.05
Django 기본 프로젝트 만들기  (3) 2017.08.04
Django 설치하기(2)  (0) 2017.08.04
Comments