Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 手动输入字段-值和最大长度_Python_Django_Input_Django Forms - Fatal编程技术网

Python 手动输入字段-值和最大长度

Python 手动输入字段-值和最大长度,python,django,input,django-forms,Python,Django,Input,Django Forms,为了更好地控制输入字段,我尝试“复制”模板中生成输入字段的函数 我使用一个模型表单,我想更改 ... {{ form.name }} ... 变成 ... <input id="{{ form.name.auto_id }}" type="text" name="{{ form.name.name }}" maxlength="{{ form.name.**get_max_length** }}" value="{{ form.name.**get_value_or_initial_va

为了更好地控制输入字段,我尝试“复制”模板中生成输入字段的函数

我使用一个模型表单,我想更改

...
{{ form.name }}
...
变成

...
<input id="{{ form.name.auto_id }}" type="text" name="{{ form.name.name }}" maxlength="{{ form.name.**get_max_length** }}" value="{{ form.name.**get_value_or_initial_value** }}"/>
...

(from)

您可以从小部件获取max_length属性。对于初始值,您只需要访问value属性,已经有初始值或提交值。传递给form类的所有初始值都保存在form.initial中,但您可能不需要检查这些值:

<input id="{{ form.name.auto_id }}" type="text" name="{{ form.name.name }}" maxlength="{{ form.name.field.widget.attrs.max_length }}" value="{% if form.name.value %}{{ form.name.value }}{% endif %}"/>


谢谢<代码>值似乎有效(我还找到了一个快捷方式-请参阅问题中的编辑),但是,我无法让
最大长度
像这样工作。你试过了吗?对不起,我忘了字段属性,它现在已经修好了。BoundField无法直接访问小部件。
<input id="{{ form.name.auto_id }}" type="text" name="{{ form.name.name }}" maxlength="{{ form.name.field.widget.attrs.max_length }}" value="{% if form.name.value %}{{ form.name.value }}{% endif %}"/>