2014-09-18 37 views
0

我想知道如何使用Django表單創建「孩子」問題。那就是,根據上一個問題提供的答案,只能看到問題。如何在Django表單中創建「孩子」問題?

我確信我沒有使用這個術語「孩子」的問題正確的術語,但我相信有人會找出我的意思

在下面的例子中,當用戶選擇「聯合美國「選擇它們來自哪個狀態的選項應該可見。這將是我的網站表格上的標準。

是否有可用的標準功能?

國家名單

COUNTRY = ( 
     ("", "----------"), 
     (AFGHANISTAN, 'Afghanistan'), 
     (ALBANIA, 'Albania'), 
     .... 
     (UNITED STATES OF AMERICA, 'United States of America'), 
     .... 
     (ZAMBIA, 'Zambia'), 
     (ZIMBABWE, 'Zimbabwe'), 

     COUNTRY = forms.ChoiceField(widget=forms.Select(), choices=COUNTRY, initial="", label='What Country are you from?') 

國家名單

STATE = (
     ("", "----------"), 
     (ALABAMA, 'Alabama'), 
     (ALASKA, 'Alaska'), 
     (ARIZONA, 'Arizona'), 
     .... 
     .... 
     (WYOMING, 'Wyoming'), 
     (DISTRICT_OF_COLUMBIA, 'District of Columbia'), 
     (PUERTO_RICO, 'Puerto Rico'), 
     (GUAM, 'Guam'), 
     (AMERICAN_SAMOA, 'American Samoa'), 
     (US_VIRGIN_ISLANDS, 'US Virgin Islands'), 
     (NORTHERN_MARIANO_ISLANDS, 'Northern Mariana Islands'), 
      ) 

    state = forms.ChoiceField(widget=forms.Select(), choices=STATE, initial="", label='What State are you from?') 
+1

Django不開箱即用。有一個第三方軟件包'django-smart-selecting',我發現有些人至少在某些方面使用了它 - 它肯定會嘗試處理一個字段的選項取決於另一個字段的值的情況,但是我不確定它處理的情況下,除了某些值之外,您甚至不想顯示選擇輸入。我自己並沒有使用它,我只是看到它提到了很多。 – 2014-09-18 19:03:42

回答

0

你或許應該只使用JavaScript來顯示/隱藏 「孩子」 選擇,然後當你處理你的表單,如果國家/地區值爲美國,則只保存一個州的值。