2016-03-31 4 views
3

私は、WagtailスニペットがFK関係を持つモデルである状況を持っています。私はそれをインラインでCMSで利用できるようにする方法を理解できません。考えるWagtail:モデルにForeignKeyの関係がある場合、スニペットでInlinePanelを使用できますか?

@register_snippet 
class TeamMember(models.Model): 
    name = models.CharField(max_length=80) 
    (other fields) 

    content_panels = [ 
     FieldPanel('name'), 
     (etc.) 
     #InlinePanel('tasks', label="Team Tasks") 
] 

class Task(models.Model): 
    team_member = ForeignKey('TeamMember', related_name='tasks') 
    (other fields) 

は、どのように私は、タスクがTeamMemberにインラインことを可能にするのですか?

これは、TeamMemberがページの場合のみ可能ですか?

+0

あなたは正しい答えとしてマークする必要があります。 – allanberry

答えて

8

ForeignKeyParentalKeyに変更する必要があります。 ClusterableModelから継承するようにTeamMemberクラスを変更する必要がある場合もあります。

@register_snippet 
class TeamMember(ClusterableModel): 
    name = models.CharField(max_length=80) 

    panels = [ 
     FieldPanel('name'), 
     InlinePanel('tasks', label="Team Tasks") 
    ] 

class Task(models.Model): 
    team_member = ParentalKey('TeamMember', related_name='tasks') 
    task = models.CharField(max_length=80) 

    panels = [ 
     FieldPanel('task') 
    ] 
+0

感謝します! ClusterableModelは欠落していたリンクです... –

+0

心配はありません!答えを正しいとマークできますか?ありがとう。 – chrxr

+0

華麗な、ありがとう:) – mexitalian

関連する問題