我已经为我的登录表单使用了预定义的html模板,我尝试将django的标准/内置用户名和密码字段{{ form.username }}
和{{ form.password }}
连接到输入字段html模板。它运行正常,但每次用户重定向到登录页面时,它都会在用户名和密码字段中填充None
字段。
使用{{form.username}} and
{{form.password}}`模板标记时,会使用有效的用户凭据填充它们。这是正常的还是我在这里遗漏了什么?
以下是我尝试使用输入字段而不是Django的内置用户名和密码字段的代码:
<!-- username input field-->
<div class="group">
<label for="{{ form.username.id_for_label }}" class="label">Username</label>
<input id="{{ form.username.id_for_label }}" maxlength="100" name="{{ form.username.html_name }}" value="{{ form.username.value }}" type="text" class="input">
</div>
<!-- password input field-->
<div class="group">
<label for="{{ form.password.id_for_label }}" class="label">Password</label>
<input id="{{ form.password.id_for_label }}" maxlength="100" name="{{ form.password.html_name }}" value="{{ form.password.value }}" type="password" class="input">
</div>
答案 0 :(得分:0)
一个简单的模板过滤器可以解决这个问题:default_if_none
<input ... value="{{ form.username.value|default_if_none:"" }}" .../>
当输入值为空字符串时,浏览器将自动使用适当的值填充它们。