问题标签 [django-crispy-forms]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
django - 迭代地构建清晰的表单布局?
我目前正在尝试呈现一个允许我们的用户编辑产品的表单,目前该表单全部显示为一个长列。
已要求我将其分成两列,但由于ModelForm
使用生成而出现问题modelform_factory()
有什么方法可以生成一个 Crispy 布局对象,该对象可以每两个表单对象插入一个新的 div?
注意:表格的长度事先不知道。
查看代码:
示例布局对象:
django - Django Crispy 表单为表单字段定义一个类
我正在使用 Django 脆表单来为我的表单设计 html。
我有两个单选按钮,设计如下
我想为 Yes 和 no 选项单选按钮定义相同的类名。
但无法弄清楚如何做到这一点。
我试过了。
InlineRadios('...', css_class="xxx")
但它不起作用。
请建议我在这里做错什么。
谢谢
django - 用 div 将每个表单包装在 formset 中,包括使用 django 清晰表单的未提及字段
我正在使用以下代码将表单的所有表单字段包装在一个带有 django 清晰表单的 div 中的表单集中:
使用 'self' 实例化 FormHelper 会自动生成布局,而无需指定所有字段。我需要这个,因为我的字段是动态生成的。问题是 DELETE 和 ORDER 字段没有添加到布局中。所以我将render_un提到的字段设置为True。使用此设置,这两个字段至少会显示在表单中,但不会与 div 中的其余字段一起包装。
我知道我可以手动迭代表单集中的表单并用 div 包装它们,这是我到目前为止一直在做的事情,但这需要手动处理表单集的非表单错误,这通常是自动完成的由脆。
编辑:按要求更新代码。这整个类实际上包装在填充fields_list 的工厂方法中,这样我就可以只动态地包含某些字段。ORDER 和 DELETE 是故意省略的。它们会被自动检测到(包括它们会导致错误)并以表单形式显示,它们根本不包含在 div 中。
django - Django Crispy 表单文件上传字段
我以为我正确地构建了我的脆皮表单,但它呈现为标准 django 表单而不是我自定义的脆皮表单:
表格.py:
SmallFileField(基于引导程序):
表单.html
PS。此表单是三步表单向导中的一步。我很欣赏你的想法!
django - Django脆表单不加载CSS
我在 SO 上看到了这个问题:Django crispy-forms cannot find CSS,并遵循了已接受答案中的所有建议,即:
- 'crispy-forms' 列在 INSTALLED_APPS 下
- 我没有运行生产服务器,所以我不确定是否应用了 collectstatic 选项(尽管我确实运行了它)
另外:我正在尝试使用引导模板包,所以我将 CRISPY_TEMPLATE_PACK = 'bootstrap' 添加到我的 settings.py 文件中。
当我从https://gist.github.com/maraujop/1838193加载示例创建的表单时,页面上没有 CSS。有什么建议吗?谢谢!
编辑: 我想我仍然缺少一些东西。我下载了 Bootstrap,将其解压缩到我的应用程序内的静态目录中,即:
我创建了一个base.html:
在我的模板中,我有:
当我尝试加载我的页面时,表单会加载(哇),但仍然没有 CSS。当我查看页面的来源时,我可以看到以下内容:
但 Django 似乎找不到该文件。
django - 带有 Django 表单和 django-bootstrap-toolkit 的 HTML5 表单属性
在具有 的Django 1.5
应用程序中django-bootstrap-toolkit
,我希望获得以下 html 结果:
重要的是附加的 "%" 以及type="number"
,min
和max
这是我的表单代码:
但是在 htmltype
中,min
然后max
就丢失了。
是不是也有机会获得一个step="2"
属性?
这可能crispy-forms
吗?
django - Django BooleanField 不显示标签
我正在摆弄 Django 表单和 Django Crispy Forms(使用 Bootstrap 作为我的主题)。我定义了两个字段:
和
当我呈现我的表单时,test2 字段显示如下标签:
下方有“更多帮助文本”。
但是,对于test1(BooleanField),标签似乎改变了文本框后显示的值,即
有没有办法让它显示得更像:
谢谢!
django - 使用自定义模板时 Django 表单字段的初始值
我的 Django 表单中有一个 BooleanField,我希望其初始值为 True,因此我将其定义为:
在我的助手中,我有:
Custom.html 看起来像:
我尝试输出 field.initial 的值,但没有任何显示。我知道,如果我手动编写代码,我会输入<input ... checked>
,然后选中该框。
有什么方法可以访问该字段的“初始”部分并将其设置在我的自定义模板中吗?谢谢!
python - Django Crispy 表单拆分字段布局
我们有一个清晰的表单,我们希望能够在表单模板的不同部分呈现不同的字段,但是我们在Crispy 文档HTML
中找不到这样做的方法。下面是一些稍微编造的代码来说明我们正在尝试做的事情:
表格.py
模板.html
有谁知道实现这一目标的干净方法?
到目前为止,我们已经研究过的方法必须排除:
- 我们可以在 HTML 中手动添加字段,而不是让脆皮为我们渲染它们。但是,这看起来是不行的,因为我们有许多
choice
字段的选项是通过编程方式确定的。 - 我们可以编写一个清晰的布局,它使用一个
crispy.forms.layout.HTML
包含 HTML 的对象来分割我们布局的两个不同部分。但是,有很多 HTML,如果我们将其直接嵌入到 python 中,将变得难以维护。 - 我们可以编写一个自定义布局对象来为我们执行此操作,但是我们预测这将非常复杂,并希望将其视为最后的手段。
- 我们可以不使用crispy,而是寻找crispy 之外的方法来实现这一点,但这样我们就会失去与应用程序中所有其他形式的一致性。
django - 是否可以在不修改 Form 类的情况下使用 django-crispy-form FormHelper
为了保持一致性,我想在我的登录表单中使用脆皮。我正在使用'django.contrib.auth.views.login'
,我只是在编写模板。
问题是{% crispy form %}
不输出提交按钮或“下一个”隐藏字段。
有什么方法可以FormHelper
在外部创建forms.py
(它在 contrib.auth 中,所以我需要尝试扩展AuthenticationForm
或类似的东西)然后在模板中使用它而不修改views.py
(也在 contrib.auth 中)
如果它需要任何带有扩展类等的忍术。我将使用纯 HTML,但如果有一种简单的方法可以FormHelper
在模板级别包含“外部”,我会后悔没有问