2010-05-26 57 views
1

下午好!有三個本質。產品,選項和產品選項。產品通過ProductOption將許多鏈接鏈接到Option。提示如何爲Product'a添加/編輯這些選項的形式(不在管理頁面上)創建請求?Django,如何使用m2m鏈接爲添加/編輯對象創建表單?

如果簡單地輸出{{product.options}} - 將選擇框作爲複數選擇。對我來說這是有必要的,它有形式。每個選項都有說明和地圖。有可能輸入它們。

外觀到自己,我代表爲:

支票拳擊與選項名稱的標籤,更低廉的選項描述。第10行。

在因特網上閱讀材料已經理解,在這種情況下,有必要使用formset。但在這裏還有一個問題:

在產品編輯時,有必要顯示所有可能的選項,而不僅僅是那些曾經保存過的選項。即保存(並填充)加,但沒有錨定到這個模型。提示請在哪裏挖。

謝謝。

+1

如果您發佈'models.py'文件的相關部分,理解這個問題會容易得多。 – blokeley 2010-05-26 12:42:12

+0

非常感謝 – moskrc 2010-05-27 11:10:51

回答

0

這是我的models.py。

class Section(models.Model): 
    title = models.CharField(max_length=250) 

    def __unicode__(self): 
     return self.title 

    class Meta: 
     pass 


class Option(models.Model): 
    title = models.CharField(blank=True, null=True, max_length=250) 
    section = models.ManyToManyField(Section) 

    def __unicode__(self): 
     return self.title 

    class Meta: 
     pass 


class Card(models.Model): 
    title = models.CharField(max_length=250) 
    section = models.ForeignKey(Section) 
    options = models.ManyToManyField(Option, through='CardOption') 

    def __unicode__(self): 
     return self.title 

    class Meta: 
     pass 


class CardOption(models.Model): 
    card = models.ForeignKey(Card) 
    option = models.ForeignKey(Option) 
    description = models.TextField(blank=True, null=True, max_length = 300) 

    class Meta: 
     pass 
相關問題