在Django模板中显示单个表单字段?
我只想创建一个
forms.ChoiceField(choices=CHOICES)
字段,用来生成一个简单的下拉选择框。因为我只想要这个,所以我不想去创建一个新的表单类等等。那么有没有办法在Django模板中只渲染一个表单字段,而不需要创建或传递一个完整的表单呢?
比如说:
def index(request, template_name="main/index.html"):
select = forms.ChoiceField(choices=CHOICES)
return render_to_response(template_name, locals(), context_instance=RequestContext(request))
有没有办法让我在Django模板中使用 {{ select }} 之类的方式来创建一个下拉选择框?
提前谢谢你!
2 个回答
0
只有一个选择字段?那为什么不把所有的HTML代码直接写到你的模板里,然后只把CHOICES这个字典通过模板标签发送到模板中来处理呢?
1
如果你不需要整个Django表单类,我建议你直接把选项列表传给模板,然后在模板中循环这个列表来创建<option />
标签,放在<select>
里面。这样做比在模板中渲染表单控件要简单得多,我觉得这样更方便。