我的目标是让 LastPass 忽略我网站上的所有输入表单。我正在使用脆脆的表单并在 HTML 中仅显示所有表单字段:
{{ form|crispy }}
但是,我想编辑此表单创建的所有输入元素的一些 HTML 属性,而不需要单独编写每个元素。 LastPass 建议我在 HTML input
标记中使用 data-lpignore="true"
。我尝试在我的表单标签中实现这一点,但这不起作用(是的,我知道,表单!=输入)。 :
<form action="{{ action }}" method="post" class="no-ajax" data-lpignore="true">
{% csrf_token %}
{{ form|crispy }}
<input type="submit" name="submit" value="Save" class="btn btn-primary btn-lg" />
</form>
这不起作用。
我还尝试在 SETTINGS.py
中包含以下内容:
CRISPY_CLASS_CONVERTERS = {'data-lpignore': 'true'}
应该根据脆皮表单'documentation将data-lpignore="true"
添加到我的脆皮表单input
标签中,但这不起作用。
我是否一直在做单独的输入行,或者有更好的解决方案吗?
最佳答案
在表单类中,将默认属性传递给用于呈现表单字段的小部件。例如,
from django import forms
DEFAULT_ATTRS = {'data-lpignore': 'true'}
...
class SampleForm(forms.Form):
name = forms.CharField(widget=forms.TextInput(attrs=DEFAULT_ATTRS))
关于python - Django Crispy Forms 添加 HTML 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50398634/