2016-12-05 34 views
-1

Django中有沒有將子對象添加到父項的方法?我知道如何檢索給予父母的孩子,但我打算做的是將孩子添加到父母,以便他們可以顯示在模板中。我有一份父母名單,每個家長都需要和他們的孩子一起在模板中展示。默認情況下,我沒有在模型中看到我可以在父對象中存儲對於一對多關係的子對象的引用。任何幫助,將不勝感激。謝謝。在Django中通過父項訪問子項

+0

你的意思ForeignKey的:

child = Child() p.children.add(child) 

如果你需要讓孩子可以通過父母讓他們當談到父母和孩子時,對象? –

+0

問題不完整,添加需要的代碼塊 –

+0

不確定您的意思是「問題不完整」。 – Foobar

回答

1

如果我正確理解你的問題,你可以使用ForeignKey這個字段。只需添加到兒童模型:

class Child(models.Model): 
    parent = models.ForeignKey(Parent, related_name='children') 

您可以以不同的方式爲父項添加子項。例如,您有一些父母p。您可以添加新的孩子是這樣的:

child = Child(parent=p) 
child.save() 

或者只是使用關係:

parent.children.all() 
+0

爲了達到這個目的,我必須使用賦值語句顯式設置parent.children嗎?通過定義一對多關係,它似乎無法工作。 – Foobar

+0

@Foobar我更新了我的答案,希望這會有所幫助。你可以在這裏找到更多細節https://docs.djangoproject.com/en/1.10/topics/db/examples/many_to_one/ – neverwalkaloner