2009-05-04 3 views
6

예를 들어 다른 프로젝트에 드롭 할 수있는 블로그 앱이 있지만 블로그를 다른 모델과 연결하고 싶습니다.Django 앱을 어떻게 Pluggable하게 만드나요?

site.com/someuser/blog

하지만 그것은 학교, 말과 연관되고 싶지 다른 사이트 : 예를 들어, 하나의 경우에 나는 그것이 사용자와 연결 할 수 있습니다

site.com/someschool/blog

그것은 내가 프로젝트에 놓을 때마다 모델 (외래 키 필드를 추가)를 다시 정의 할 필요는 없습니다 그래서 블로그 응용 프로그램은 플러그 만들 수있는 방법이 있나요?

+2

talk on pluggable apps의 마지막 django conference를 확인하십시오. – yesraaj

답변

4

ContentTypes 프레임 워크를 살펴보고 데이터베이스의 모든 모델에 주석을 달 수있는 주석 응용 프로그램을 만드는 데 사용했습니다. 다른 이유로 표준 장고 주석 응용 프로그램을 사용하고 싶지 않았습니다.).

http://docs.djangoproject.com/en/dev/ref/contrib/contenttypes/

6

이 응용 프로그램은 재사용 할 수 있는지 만들기위한 몇 가지 중요한 사항이 있고 나는 주제에 대한 문서의 중요한 세트 2 개에 연결하는 것이 가장 좋습니다 생각 :

3

Generic relationships 다른 모델에 외래 키를 사용할 수 있습니다. 그러나 외래 키를 연결할 개체의 유형을 묻는 질문에서 명확하지 않습니다. 나는 외래 키 관계가 정말로 일반적인 것이 아니라고 생각합니다. 당신은 재사용 가능한 응용 프로그램이 될 수도있는 시스템의 다른 부분을 발견하지 못했습니다.