我有一个Post表单,我想在模板层渲染一些自定义值。我的帖子形式是这样的:
class PageForm(forms.ModelForm):
language = ...
translation_of = ...
def __init__(self, *args, **kwargs):
super(PageForm, self).__init__(*args, **kwargs)
self.fields['language'].wrapper_attrs = {'class': 'left'}
self.fields['translation_of'].wrapper_attrs = {'class': 'right'}
我的模板是这样的:
{% for field in form %}
>> {{ field.wrapper_attrs }}
{% endfor %}
当我渲染该模板时,期望看到一个dict对象或类似的东西。但一无所获。有什么想法吗?
答案 0 :(得分:0)
在表单实例化后,其__getitem__()
和__iter__()
会返回BoundField
而不是原始的Field
实例。 BoundField
为"A Field plus data"
进行渲染,因此您可以尝试{{ field.field.wrapper_attrs }}