2011-09-06 31 views
2

我是一個Django的小白,我有與像的模型建立一個Django項目:你能自動在模板中顯示模型選擇嗎?

class community(models.Model): 
    DIRECTION_CHOICES = (
     (u'N', u'North'), 
     (u'S', u'South'), 
     (u'E', u'East'), 
     (u'W', u'West'), 
     (u'C', u'City'), 
    ) 
    name = models.CharField(max_length=100) 
    direction = models.CharField(max_length = 1, choices=DIRECTION_CHOICES) 
    def __unicode__(self): 
     return self.name 
    class Meta: 
     verbose_name = "Community" 
     verbose_name_plural = "Communities" 

我想補充一點,只是顯示的鏈接選擇作爲向下鑽取類型的模板頁面菜單,如:

***Communities*** 
* North 
* South 
* East 
* West 
* City 

,當你點擊一個你看到在該地區的社區的列表。

有沒有一種方法,我可以做

{% for area in choices %} 
    {{ area.name }} 
{% endfor %} 

回答

6

你怎麼樣加入到這個表單類和顯示選項,如下所示: https://docs.djangoproject.com/en/dev/ref/forms/fields/#choicefield

或者,您可以在您的視圖返回的選擇,就像這樣:

def main(request): 
from app.models.community import DIRECTION_CHOICES 

return render_to_response('my_template.html', 
         {'choices':DIRECTION_CHOICES}, 
         context_instance=RequestContext(request)) 

,並在你的模板:

<select name="direction"> 
     {% for k,v in choices %} 
      <option value="{{ k }}"/>{{ v }} 
     {% endfor %} 
</select> 
+0

但我不想要一個表單,我只是想要一個下拉式的鏈接菜單。我編輯了我的問題來反映這一點。 – JKirchartz

+0

所以你可以使用我的第二種方法! –

相關問題