웹 & 프레임워크

Django 만지기

늘근이 2015. 4. 22. 20:17

이제 장고를 설치만 했는데, 기본적으로 MVC모델을 따르고 있을 것이나, 굳이 파이썬을 이용하는 이유는 그 수많은 패키지와 어플리케이션의 힘을 좀 얻고 싶어서 쓰는 것이다. 따라서, HTML Visualization 을 하기 전에 테스트할 앱을 몇개 설치해보고 쓰는것이 좋을것같다.

 

사실 제일 빠르게 웹 어플리케이션을 구축하는 방법은 아직까지는 APM Setup 조합과 Code Igniter 조합이 거의 제일 빠르고, 아예 설치형의 경우는 XE가 제일 빠른편인듯. 워드프레스도 좋은데 조금 외국취향이기 때문에..게시판도 찾기 힘들고 하다.

 

각설하고 한번 만들어보자..

 

일단 만들어진 mysite를 들어가서 열심히 py 페이지를 바꾸면 될듯하다.

 

IDE는 사실 조금 고민했는데, Visual Studio 가 그렇게 편하다고 해서 한번 써보려고 하는데 Syntax Highlight기능이 그다지 맘에 들지 않아서..그리고 Python과의 궁합이 생각보다 그렇게 좋지 않아서(자꾸 뭐가 다운된다고 뜬다.) 다음 C++프로젝트를 할때 쓰기로 했다. 물론 몇시간후에 바꿀지도 모른다. 자동완성기능이 별로 좋지 않으면..

 

이제 Eclipse를 고려해봤는데 식상하고,

 

Sublime Text를 한번 써보련다.

 

 

다음과 같은 명령어로 하나 만들자

 

 

 python manage.py startapp polls

 

자 이제 settings.py에 다음과 같이 추가한다.

 

 

 INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
     'polls',
)

 

 python manage.py makemigrations polls

 

됐다. 이제는 Create model Choice 뭐 이런게 나온다.

 

 python manage.py sqlmigrate polls 0001

 

이제 이거 하면 SQL이 좌르륵 나오기 시작한다.  실제로 나오는건 아니고 그냥 필요한게 나온다고 한다.

 

 python manage.py migrate

 

이제 실제로 된다.

 

즉 , 모델이 바귄다면 이렇게 귀찮게 해주어야 한다고 한다. (데이터베이스와 연결이 되어있어 그런듯하다.)

ㅂ.

models.py 에서 모델을 바꾼다면

python manage.py makemigrations

python manage.py migrate

 

이거 세개를 해주는 것이다.

 

이제 이걸로 가지고 놀수있다.

 

 

 

 

자 이제 이런걸로 객체생성하고 가지고 노는것은 그만 하고 다음과 같은 슈퍼유저를 생성한 다음에 관리자 사이트를 가볼수있다.

 

 python manage.py superuser

 

 

 

/admin으로 들어가면 된다.

 

이제 여기서 객체나 다른 정보를 만들어낼수 있다.

 

 

from .models import Question

# admin.site.register(Question)

class QuestionAdmin(admin.ModelAdmin):
    fields = ['pub_date', 'question_text']

admin.site.register(Question, QuestionAdmin)