001에 이어서 002는 create page입니다. 


결론적으로는 잘 까먹는 저를 위해서 작성해두는 포스팅이구요.

혹시라도 읽고 계시는 분이라면 순서대로 읽고 계시다고 가정하고 내용을 정리합니다. 


001을 간단하게 리뷰해보면, 

스크립트로 Django 설치, 프로젝스 생성, 앱 생성, runserver, 웹 페이지를 통해 확인하는 것입니다.


001에서 생성한 프로젝트 및 앱의 구조는 아래와 같슴다. 


../formstest/
                  ┣ manage.py
                  ┗ formstest/
                  ┃                ┣ __init__.py
                  ┃                ┣ settings.py
                  ┃                ┣ urls.py
                  ┃                ┗ wsgi.py
                  ┃                

                  ┗formstestapp/                

                                     ┣ static (folder)

                                     ┣ template (folder)

                                     ┣ __init__.py

                                     ┣ admin.py

                                     ┣ models.py

                                     ┣ tests.py

                                      views.py


002는 urls.py, views.py, forms.py 그리고 template 에 대해서 간단하게 정리합니다.

음 일단 Django의 MTV를 알고 계셔야겠죠.


일반적으로 Django를 통해 작동하는 웹 서비스? 시스템?의 순서를 간단하게 나타내보면 


사용자 웹 브라우저 -> 주소 입력 -> Django url -> Django view -> Django Model or Template -> 사용자 웹 브라우저에 시각화  입니다.

그래서 소스를 작성하실 때 urls.py -> views.py -> model.py 그리고 template의 순서가 괜찮은 것 같습니다. 



1. urls.py 추가하기


위 구조를 잘 보면 알 수 있다. formstest 폴더에는 urls.py가 있지만 formstestapp (추가 한 앱)에는 urls.py가 없다.

formstest 폴더에 있는 urls.py를 사용해도 되지만 

완벽하게 하나의 app으로 분리해서 나중에 재사용하기 위해서라도 분리하는 것이 좋다.


어찌대뜬 분리하자.


formstest에 있는 urls.py를 cp로 가져다가 formstestapp에 넣어주자

복사한, 그러니깐 formstestapp/urls.py를 vi로 열어서 아래와 같이 수정 해주자.

그러니깐 http://ipaddress:8000/formstestapp/ft/ 로 접근하면 views.formstest_view 라는 것을 실행한다는 거다. 

본래 목적인 forms를 테스트하기 위한 url 셋팅 정도로만 이해해도 되겠다. 


음 그런데, 새로운 formstestapp/urls.py를 추가했는데 누구한테도 알려주지 않았다.

알려줘야 하는 녀석은 formstest/urls.py 이다. 원래 있던 녀석말이다. vi로 열어서 아래와 같이 수정해주자.

일단은 urls.py는 여기서 끝.



2. views.py에 formstest_view 추가하기


formstestapp/views.py를 열어서 urls.py에 우리가 추가한 views.formstest_view를 만들어줘야 한다. 

아래와 같이 간단하게 변경한다.

소스를 보면 알 수 있듯이 formstest.html을 그려주는 내용이 formstest_view에 있다.!!!

역시 본래 목적인 forms를 테스트하기 위한 정도의 views.py 셋팅이라고 이해해도 된다.


formstest.html은 아직 만들지 않았는데, 3에서 만들어보고 간단하게 테스트한다. 



3. template 파일 만들어서 테스트하기.


3번까지가 Django Forms(002) - create page 에서 작성해두고 싶은 내용이다.

Django Forms(001) - init  문서에서 스크립트를 돌릴 때 static 폴더와 template 폴더를 만들어뒀다. 

설정도  settings.py에 들어가도록 작성했다. 즉 template 폴더에 formstest.html만 만들면 된다.


vi로 ..../template/formstest.html을 아래와 같이 작성해봅시다.

결론은 context로 넘어온 녀석을 쉽게 사용이 가능하구나 정도이다.

그래서 웹 브라우저에서 확인해보면 다음과 같다.

아무튼 테스트까지 끝. 

이제 정말 003에서는 form 관련한 내용으로 정리해봐야죠. 

말이 반말이 대부분이네요. 제가 다시 본다고 생각하다보니깐 암튼 누군가에게는 도움이 되길..

모든 소스는 다음 URL에서 확인할 수 있슴다.  https://github.com/motobyus/moto/tree/master/djangoFormsTest/002_createPage/formstest


  1. 2015.11.10 11:34

    비밀댓글입니다

+ Recent posts