2013-10-04 76 views
0

我正在創建一個表單並試圖預先動態填充它。例如:如果用戶選擇了('Front End','Front End'),我們將返回css,html,javascript給他們,他們可以選擇相關語言(通過複選框,多選)角色。Django形式2下降,許多?

我不認爲我有足夠的模型創建。此外,我認爲這將採取兩種形式,一種是創建所有這些數據,另一種是將其返回以顯示供用戶使用。

#models.py 

TITLE_CHOICES = (('Select', 'Select'), 
    ('Front End', 'Front End'), 
    ('Back End', 'Back End'), 
    ('Mobile', 'Mobile'), 
    ('Other', 'Other') 
    ) 


class Role(models.Model): 
    profiletitle = models.CharField(max_length=25, null=True, choices=TITLE_CHOICES, default='Select') 

    def __unicode__(self): 
     return self.profiletitle 

我的問題是在我的形式。我需要第二次下拉,這與配置文件「語言」有關。我不確定如何使用manytomanyfield將簡介選擇與語言相關聯。

語言下拉菜單/複選框應該只顯示選中的所選簡介的相關語言。

感謝您的閱讀/幫助。

PS。我試圖用Django來做到這一點,沒有JavaScript,我正在開發App Engine。 (沒有連接)

回答

1

如果你想在沒有JS的情況下在Django中做到這一點,你將不得不讓表單提交。並加載第二個表單。

我不知道,如果你正在使用基於類的視圖或功能視圖但無論如何,你的邏輯應該是:

  1. 表1:具有用戶選擇角色(即前端,後端,等,...)並按提交(發佈表單)
  2. 當你在你的django視圖中處理這個表單時,選擇選項(前端,後端等)併爲相關語言進行查詢並使用該查詢集/選項作爲語言形式輸入的選項,並將視圖重定向到此表單(表2)。

我不知道爲什麼你不想JavaScript,但你可以看看動態的形式this link(和其他許多人在那裏)

注:因爲我看不出有任何的代碼,我可以只建議你採取這個方向,猜你會這樣做,我會給你束縛的方式..