我想在没有html标记的情况下分别呈现form.errors,但它似乎不起作用
views.py
mydf <- structure(list(ID = c(1L, 3L, 4L, 3L), measure = c(12L, 3L, 365L,
1L), timemark = c(15L, 13L, 0L, 13L)), class = "data.frame", row.names = c(NA,
-4L))
login.html
....
context = {
'login_error': form.errors,
'login_form': LoginForm(),
}
return render(request, 'shop/login.html', context)
....
我得到的答案是将其拆成一个循环,然后添加一个....
<label class="mt-1"> {{ login_form.username.label }} </label>
{{ login_form.username }}
{{ login_error.username }}
<label class="mt-1"> {{ login_form.password.label }} </label>
{{ login_form.password }}
{{ login_error.password }}
....
|escape
所以,问题是,为什么此输出带有html标记
....
{% for error in login_error %}
{{ error|escape }}
{% endfor %}
<label class="mt-1"> {{ login_form.username.label }} </label>
{{ login_form.username }}
<label class="mt-1"> {{ login_form.password.label }} </label>
{{ login_form.password }}
....
但此输出没有html标记,与上面的标记基本相同(?)
{{ login_error.username|escape }}
{{ login_error.password|escape }}
预期结果是没有html标记的字段错误,但是{% for error in login_error %}
{{ error|escape }}
{% endfor %}
还会输出html标记
{{ login_error.username|escape }}
输出没有html标记,但需要循环,我需要单独输出错误,但没有html标记