2011-11-12 78 views
0

我有引用(外鍵)後模型的評論模型,並且在發佈模型中有一個布爾型字段,用於指示此特定帖子是否有任何評論。如何更新Django中外鍵引用的表中的值

  • 我想要做的是更新每當註釋上崗位上做出了,這個我有什麼在視圖中做後的這個布爾領域。

  • 此外,當我顯示一個頁面上的所有帖子,我想先顯示那些沒有任何評論的人,以便人們可以評論他們。

我怎樣纔能有效地做好以下兩件事

回答

1

您可以使用comment_was_posted signal更新相關Post一旦有新的評論。請參閱此主題以獲得總體思路:Django notification on comment submission

儘管在您的Post型號上創建count_comments()方法可能會更好。

要訂購和評論對一個給定的Post檢查Django's docs on aggregation或該博客文章的數量篩選文章:http://agiliq.com/blog/2009/08/django-aggregation-tutorial/

+0

其實我不使用Django的意見,我都做過類似的事情,我需要做大量的更改並沒有要求django評論提供的所有功能,因此沒有使用它...因此,現在的觀點是因爲我不能使用comment_was_posted信號我還能做什麼?我不能在評論模型中定義某些內容,例如當用戶發佈評論時,可以在外部對象引用的Post對象中進行更改 – Sachin

+0

好吧,替代方法是重寫您的自定義的save-method註釋應用程序內。請查看以下有關此主題的一般信息:http://www.martin-geber.com/thought/2007/10/29/django-signals-vs-custom-save-method/ – arie

+0

您給出的鏈接告訴我在哪裏可以編寫保存前後的代碼,但是我想知道如何通過使用我擁有的外鍵在註釋模型中引用父模型?我希望我明確提出了問題? – Sachin