2013-12-24 5 views
0

주어진 다음의 예 모델 :django에서 ModelForm 또는 Form에 인라인 formset을 내장 할 수 있습니까?

class Reporter(models.Model): 
    pass 
class Article(models.Model): 
    reporter = models.ForeignKey(Reporter) 

난 당신이 기자 자신의 필드를 편집 또한 기자에 대한/편집 기사를 추가 할 수 있도록 해주는 ReporterForm을 정의하고 싶다. (예제 코드에는 존재하지 않음)

기자가 편집 될 때마다 관리자는 해당 기자 인라인에 속한 기사를 볼 수 있도록 장고 관리 패널에서 ReporterForm을 사용할 수 있기를 원합니다.

깨끗한 방법이 있습니까? 아니면 올바른 모델 디자인이 아닌가요?

추신. Reporter에게 ManyToManyField (기사)를 제공하고 장고가 마법을 부릴 수 있다고 생각했지만 기사는 여러 다른 기자에게 속할 수 있다는 것을 의미합니까?

답변

1

이것은 정확히 인라인 서식 세트를위한 것입니다. 당신은 인라인 모델 formsets을 가질 수
https://docs.djangoproject.com/en/dev/topics/forms/modelforms/#inline-formsets

는 관리자 사이트에서이 작업을 수행하려면이 InlineModelAdmin입니다 :
https://docs.djangoproject.com/en/dev/ref/contrib/admin/#inlinemodeladmin-objects

from django.contrib import admin 

class ArticleInline(admin.TabularInline): 
    model = Article 

class ReporterAdmin(admin.ModelAdmin): 
    inlines = [ 
     ArticleInline, 
    ]