django에서 syncdb를 통해 테이블을 생성할 경우
테이블 이름은 '{appname}_{classname}'으로 지정된다.

이와 같은 경우 몇 가지 문제 케이스와 직면할 수 있는데,
1. legacy system에 django를 적용해야 할 경우 기존 database table들의 변경 없이 사용해야 한다.
2. 다양한 시스템(PHP, ASP, JSP, ROR, Etc.)이 하나의 database에 접근할 때,
    django의 naming rule을 강제할 수 없다.
위의 두 가지가 대표적이다. 

때문에, django에서는 table 명을 다음과 같이 강제 지정할 수 있다.

class Sessions(models.Model): 
    {... some fields}
    class Meta:
        db_table = u'sessions' 

위와 같이 지정하면 django는 database에 '{appname}_sessions'가 아닌 'sessions'로 생성 및 접근하게 된다.

'django' 카테고리의 다른 글

database에서 models.py 추출하기  (0) 2011.06.09
aptana에서 django 프로젝트 설정하기  (0) 2011.05.31
|

ghilbut's Blog is powered by Daum & tistory