Django Crispy Forms Bootstrap 4 – Crispy Forms使用

学习Django crispy form bootstrap 4(如何在django中使用crispy表单)。 Django-Crispy-Forms表单教程。 将Bootstrap Form与Django集成非常简单。 Bootstrap有很多Django库。 在本教程中,我们将对Django中的Bootstrap Form使用django-crispy-forms。 Crispy-Forms是一个很棒的软件包,可以很好地控制Django项目中Bootstrap表单的呈现。

安装Crispy Forms:

pip install django-cripsy-forms

然后修改settings.py文件,在INSTALLED_APPS中增加:

 

下载并设置Django项目的Bootstrap表单
您可以从getbootstrap下载最新的Bootstrap 4版本。 然后转到下载页面并获得Compiled CSS and JS版本。

或者,如果您不想下载,则可以使用托管的Bootstrap CDN –

为简单起见,我将使用CDN版本。 这是我的base.html,下面的示例中引用了它–

如果对Django 模板不熟悉的可以先看上面的内容。

接下来就是如何使用CrispyForms了,假设我们有如下的model 如下:

设我们要创建一个表单以在模型中添加产品。 为此,我们使用CreateView。

在product.html文件中,base.html将对其进行扩展。 在product.html中,我们将呈现ProductCreateView和表格。

这是非常基本的表单渲染。 Django将仅使用纯字段来呈现样式。

https://studygyaan.com/wp-content/uploads/2019/09/CrispyFormBasic.png

用Bootstrap classes,渲染:

用crispyforms后,结果如下:

https://studygyaan.com/wp-content/uploads/2019/09/CrispyForm.png

在某些情况下,您需要一些自由来呈现表单字段。 您可以通过手动呈现字段并使用as_crispy_field模板过滤器来实现–

https://studygyaan.com/wp-content/uploads/2019/09/CrispyFormAsField.png

Django-Crispy-Forms Helpers 方法:

Django Crispy Form有一个名为FormHelper的特殊类方法,该方法可以更好地控制如何呈现表单。

这是使用Form的UpdateView的示例–

主要逻辑在__init __()方法中。 在该方法中,我们调用了Crispy FormHelper方法。 使用辅助函数,我们定义了POST方法来处理表单。 我们还用“保存产品”更改了提交标签。

现在我们来看,只是常规的Django代码:

product-update.html –模板文件:

在这里,我们可以简单地调用{%crispy%}模板标记并将表单实例作为参数传递。

https://studygyaan.com/wp-content/uploads/2019/09/CrispyFormHelper.png

 

使用Crispy表单进行高级表单渲染
本节将说明如何使用脆性表单功能处理高级表单呈现。 Django脆皮表单自定义模板。

Crispy Forms表格布局助手
我们可以使用Crispy Forms的表单助手功能来实现与图像( image.)相同的布局。

而且,如果您看到模板的实现非常少。 您可以从此处比较HTML代码(here.)。

https://studygyaan.com/wp-content/uploads/2019/09/CrispyForm11.png

github:https://github.com/studygyaan/How-to-Use-Bootstrap-4-Forms-With-Django-Crispy-Forms

原文:https://studygyaan.com/django/how-to-use-bootstrap-4-forms-with-django-crispy-forms