python - Django Crispy Forms 添加 HTML 属性
问题描述
我的目标是让 LastPass 忽略我网站上的所有输入表单。我正在使用清晰的表单并在我的 HTML 中仅显示所有表单字段:
{{ form|crispy }}
但是,我想编辑此表单创建的所有输入元素的一些 HTML 属性,而不是单独编写每个元素。LastPass 建议我data-lpignore="true"
在我的 HTMLinput
标签中使用。我试图在我的表单标签中实现它,但这不起作用(是的,我知道,表单!=输入)。:
<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'}
根据脆皮表单的文档,这应该添加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))
推荐阅读
- javascript - 确定包含空单元格的列范围中的最后一行 - Google 表格
- python-3.x - 使字典完全脱离用户输入
- python - tkinter中变量和文本变量之间的区别
- vue.js - Vue + axios - 如果最后一个请求完成则更改变量
- javascript - 如何在 p5.js 中填充由线条组成的形状?
- sql - TSQL:如何将表名 London 重命名为 t_London 并在程序正文中保持不变的 p_London
- genexus - [Genexus} de Network.IsServerAvailable() 函数背后的代码是什么?
- javascript - iCheck 和淘汰赛 - 启用绑定不显示相关复选框已启用
- flutter - 应用程序启动时如何从 HIVE 中“加载”数据?
- java - 将文件添加到 jar 文件的当前类路径