如何为模板中的django表单字段赋值?
我想知道如何将值分配给模板中的django表单字段。
我知道在Django中还有其他方法可以分配初始值,但我需要在模板中分配值,因为变量只存在于模板中。
使用正常的html表单来做到这一点的方法是:
{% for thing in things %}
<p> {{ thing.content }} </p>
<!-- Reply form -->
<form>
<input type="hidden" name="replyingto" value="{{ thing.number }}">
<input type="text" label="Reply"></input>
</form>
{% endfor %}
但是,我需要使用django表单。
我也知道有一种方法可以将标签分配给模板中的字段,如下所示:
{{ form.non_field_errors }}
{{ form.field.errors }}
<label for="{{ form.field.id_for_label }}"> field </label>
{{ form.field }}
所以我的问题基本上是你如何去做上面的例子,而不是分配一个标签,分配一个值。
我找到了解决方案!
我所做的就是按照丹尼尔的建议手动键入html,并以此方式分配值。
对于任何人想知道我是如何做到的,这里就是一个例子。
在坚果壳里,你不要用HTML来做这件事(除非你想按照你所描述的那样手动创建表格),你可以用Python来做。
在forms.py
您可以设置initial
属性以定义字段的默认值。
例如: name = forms.CharField(initial='class')
或动态地在views.py
中使用dict
。
例如: f = CommentForm(initial={'name': 'instance'})
扩展参考:https://docs.djangoproject.com/en/1.10/ref/forms/api/#s-dynamic-initial-values
链接地址: http://www.djcxy.com/p/25249.html上一篇: How to assign a value to a django form field in the template?