0
我已經嘗試了很多東西,但我仍然不知道如何在Django中填充select field
。以下示例添加了一個字典,其中包含一個具有name='tags'
屬性的選擇字段。用Django中的多個值選擇字段預填充表單
data = {}
for tag in tags:
data['tags'] = tag.name
form = Form(initial=data)
由於預期,環路覆蓋鍵「標籤」,所以只普遍存在的最後一個值(事實上,該表單顯示的最後一個值)。我預計可能通過一個清單將工作:
data = {}
l = []
for tag in tags:
l.append(tag.name)
data['tags'] = l
form = Form(initial=data)
但在這種情況下,它只是不起作用。
正如你可以想像,我使用的是類似這樣的形式:
class NewTopicForm(forms.Form):
... some fields
tags = ChoiceField(
widget=forms.Select(),
choices=SOME_CHOICES
)
什麼來填充形式與選擇字段,當我需要添加幾個值的正確方法?
謝謝!
UPDATE:
我試着按照這個post如下:
data = {'tags': tags.values_list('name',flat=True) }
不幸的是,這是行不通的。我錯過了什麼嗎?
美麗。我不得不將它改爲tags = forms.MultipleChoiceField( widget = forms.SelectMultiple(attrs = {//一些屬性}),選項= TAGS_CHOICES),但是這個工作很完美。非常感謝!。 –