使用:Django的1.8和Python 3.4嵌套多對多場在Django
我有以下型號:
class SpaCenter(models.Model):
name = models.CharField(max_length=100)
website = models.CharField(max_length=200)
facebook_url = models.CharField(max_length=200)
faq = models.ManyToManyField(SpaCenterFAQ)
class SpaCenterFAQ(models.Model):
pass
class SpaCenterFAQLanguage(models.Model):
faq = models.ForeignKey(SpaCenterFAQ)
faq_language = models.CharField(max_length=2,
choices=LANGUAGE_CHOICES,
default=ENGLISH)
faq_question = models.CharField(max_length=200)
faq_answer = models.TextField()
總結:
- 每個SpaCenter可以multipe常見問題
- 每個FAQ都可以屬於多個Spa中心
- 每個FAQ都需要在多個語言,因此SpaCenterFAQL語言模型處理語言翻譯
使用Django內置管理界面我希望能夠在SpaCenter管理界面中輸入常見問題解答的所有不同翻譯。
所以基本上這是一個嵌套的關係,我知道這個線程:
除了這兩個試圖解決這個問題,這些社區創建的應用程序的:
但是,我仍然在努力瞭解如何在Django Admin中定義這一點,即使在使用這些庫時也是如此。
需要幫助瞭解這種關係如何顯示在SpaCenter的管理界面中。
非常感謝。
編輯:
- 的SpaCenterFAQ模型沒有因爲處理語言附表的領域。例如:一個spacenter可以有幾個常見問題解答。但是,每個FAQ都需要使用多種語言。
對不起,jumpted定論爲時尚早 - 這個工作對我的模型的另一部分,其中有2個外鍵關係。因此,如果一個SpaCenter可以有多個常見問題解答,但每個常見問題解答只能有一個水療中心 - 那麼您的代碼就是事實。 但是,這裏的問題是多對多,所以我假設某處必須有一個.through參數 – Aivoric
model = SpaCenter.faq.through – delta32
,這是行不通的... – Aivoric