니가 준 상처로 잘 먹고, 잘 살고 있어!!


MTV 개발방식


  • 테이블을 정의하는 Model
  • 사용자가 보게 될 화면을 정의하는 Template
  • 애플리케이션의 제어 흐름 및 처리 로직을 정의하는 View



MTV 개발 순서


  1. 프로젝트 뼈대 만들기 : startproject / startapp
  2. Model 코딩하기 : 테이블 관련 사항 개발 (models.py, admin.py)
  3. URLconf 코딩하기 : URL 및 뷰 매핑 관계를 정의 (urls.py)
  4. View 코딩하기 : 애플리케이션 로직 개발 (views.py)
  5. Template 코딩하기 : 화면 UI 개발 (templates/*.html)




python-django-atom-bookmark app


  1. cmd 에서 원하는 디렉토리로 이동
  2. django-admin.py startproject 폴더명 # 프로젝트 생성 (상위폴더명은 변경해도 무방)
  3. atom에서 setting.py 를 열어 설정항목 확인 및 변경 # 'Asia/Seoul' , 'ko-kr'
  4. python manage.py migrate # 사용자 권한 그룹 테이블 생성
  5. python manage.py createsuperuser # 슈퍼유저 생성(admin 계정)



bookmark app 시작


python manage.py startapp bookmark # 애플리케이션 생성

atom에서 setting.py 를 열어 INSTALLED_APPS에 'bookmark.apps.BookmarkConfig' 등록 # 가급적 애플리케이션의 설정 클래스명 사용




bookmark/models.py   # 테이블 정의


from __future__ import unicode_literals # python 2.x 지원용


from django.db import models

from django.utils.encoding import python_2_unicode_compatible


# Create your models here.


@python_2_unicode_compatible # python 2.x 지원용


class Bookmark(models.Model):

    title = models.CharField(max_length=100, blank=True, null=True)

    url = models.URLField('url', unique=True)


    def __str__(self):

        return self.title




bookmark/admin.py  # admin에 테이블 반영


from django.contrib import admin

from bookmark.models import Bookmark


# Register your models here.


class BookmarkAdmin(admin.ModelAdmin):

    list_display = ('title', 'url')


admin.site.register(Bookmark, BookmarkAdmin)




데이터베이스에 변경 사항 반영 

python manage.py makemigrations  # 변경(정의)된 기록물 생성(마이그레이션 파일)

python manage.py migrate  # 변경된 기록물로 테이블 생성

python manage.py runserver # 테이블 확인




이 글을 공유합시다

facebook twitter kakaoTalk kakaostory naver band