是否可以在不修改 Form 类的情况下使用 django-crispy-form FormHelper

Posted

技术标签:

【中文标题】是否可以在不修改 Form 类的情况下使用 django-crispy-form FormHelper【英文标题】:Is it possible to use django-crispy-form FormHelper without modifying Form class 【发布时间】:2013-07-25 09:10:26 【问题描述】:

为了保持一致性,我想在我的登录表单中使用脆皮。 我正在使用'django.contrib.auth.views.login',我只是在编写模板。

问题是% crispy form %不输出提交按钮,也不输出“下一步”隐藏字段。

有没有办法在forms.py 之外创建FormHelper(它在contrib.auth 中,所以我需要尝试扩展AuthenticationForm 或类似的东西)然后在模板中使用它而不修改@987654326 @(也在 contrib.auth 中)

如果它需要任何带有扩展类等的忍术。我会使用纯 html,但如果有一种简单的方法可以在模板级别包含“外部”FormHelper,我会后悔没有问

【问题讨论】:

【参考方案1】:

我不确定您为什么需要使用 % crispy form % 而不仅仅是 crispy 过滤器。我在我的登录表单中使用了crispy,以这种方式覆盖了来自 django.contrib.auth 的模板:

% load crispy_forms_tags %

% block body %

<form method="post" action="" class="form-signin">% csrf_token %
     form|crispy 
    <div>
    <button type="submit" class="btn btn-primary">% trans "Log in" %</button>
    </div>
</form>

% endblock %

【讨论】:

人们可能不想简单地将整个表单弄得酥脆——例如,由于我单独处理我的错误,我不希望它们显示在表单中。

以上是关于是否可以在不修改 Form 类的情况下使用 django-crispy-form FormHelper的主要内容,如果未能解决你的问题,请参考以下文章

在不修改 C# XSD 类的情况下向 XML 序列化添加前缀和命名空间

InvalidFormatException for Date - 在不使用 JsonFormat 或修改原始类的情况下进行修复

是否可以在不使用浏览器插件的情况下修改链接目标的 html?

是否可以在不创建全新文件的情况下修改 .jar 文件? [复制]

是否可以在不手动将重写的克隆方法添加到 C++ 中的每个派生类的情况下克隆多态对象?

是否可以在不替换的情况下以编程方式修改/更新 plist 文件?