2014-10-22 33 views
0

我正在使用django poll app與另一個應用程序名稱教科書的應用程序有一個名爲學校的應用程序的應用程序。我曾在教科書的應用程序,即在Django民意調查應用程序選項中顯示模型對象作爲選項

schoolbooks/models.py 
from polls.models import Question 

class Schools(models.Model): 
    name=models.CHarField(max_length=100) 
    city=models.CharField(max_length=50) 
    polls=models.ManyToManyField(Question) 

車型在調查的應用程序增加了一個模型

class Question(models.Model): 
    question_text = models.CharField(max_length=200) 
    pub_date = models.DateTimeField('date published') 


class Choice(models.Model): 
    question = models.ForeignKey(Question) 
    choice_text = models.CharField(max_length=200) 
    votes = models.IntegerField(default=0) 

我有兩個民意調查,或在投票問題模型/ models.py問題: 哪個是最好的學校? 那所學校有最好的員工嗎?

只有這兩個民意調查我想顯示的學校列表作爲選擇。我正在使用django民意調查應用程序作爲一個應用程序,不想做任何改變。
我想顯示學校模型實例作爲這兩個民意調查的選擇,並希望人們爲這些民意調查投票。 like

Which is the best school?  
school1 
school2 
school3 

請向我建議一個解決方案。幫助將不勝感激。

回答

0

我希望我的問題正確:您可以使用Django shell插入數據或編寫一個腳本。首先你需要所有你想要的學校(例如通過管理界面)。比你打開Django shell,並用question_text =「哪所學校最好?」創建一個問題。然後,您可以通過學校,併爲每個學校創建一個選擇與學校名稱作爲choice_text。

編輯 - 我剛纔看到,你的學校模型中有一個m2m字段。對於我的解決方案,你不需要這個。

+0

我想我將不得不創建另一個模型來解決number_of_votes和學校名稱的問題。像 '類票數(models.Model): 票= models.IntegerField(默認值爲0) 問題= models.ForeignKey(問題) 學校= models.ForeignKey(學校)' 當有人投票,它將創建這個模型的一個實例。如果以前存在的話只會增加投票數字段。我認爲 – 2014-10-22 11:59:32

+0

你也可以將一個外鍵添加到鏈接到學校的Choice類。這將是我所面臨的最簡單的解決方案。 – Magda 2014-10-22 12:07:36

+0

但限制是我不能在民意調查程序中做任何改變。無論我要做的是在教科書應用程序內做什麼。或者我認爲我能做的就是每當我創建一所學校時,它也應該存儲在選擇中。意味着在保存方法中,我可以創建與這些問題或民意調查相關的兩個選擇實例。我對嗎? – 2014-10-22 12:27:11

相關問題