如何让我的表单在 Django 中工作?

Posted

技术标签:

【中文标题】如何让我的表单在 Django 中工作?【英文标题】:How to make my forms work in Django? 【发布时间】:2017-06-08 00:07:14 【问题描述】:

我刚刚用 Django 创建了一个 Bootstrap 3 网站。我的网站有 4 种不同的弹出模式,按以下顺序排列:1. 上传您的显示图片,2. 添加基本信息,3. 选择登录凭据和 4. 添加他们的个人简介。

这 4 种模式都包含自己的 html 表单,所以我有 4 种不同的表单供用户注册他们的帐户。我的问题是如何将所有 4 个表单链接在一起,以便将信息传递到我的 Django 服务器并在我的数据库中生成用户?

我看过人们通过 Forms.py 文件生成表单的视频,但我不能那样做,因为我已经有了我的表单。如果我不花时间设计前端,我只会删除表单并通过 Forms.py 文件再次生成它们,但我做到了。

谁能帮帮我?我对 Django 很陌生。

【问题讨论】:

你'已经有我的表格'是什么意思?您需要创建 django 表单,然后将您的标记与它们集成。你可能应该看看这个; github.com/dyve/django-bootstrap3 我已经用 css 设计了它们。重新创建和重新设计它们会花费太多时间。 您不需要重新设计它们。您可以将现有的标记与 django 中的表单一起使用。发布一些示例标记以及您尝试使用 django 表单执行的任何操作。 Applying bootstrap styles to django forms的可能重复 【参考方案1】:

你误解了 django 中表单的概念。 它们的设计和创建是为了在保存到数据库之前验证用户输入,从表单类生成 html 只是附加功能,您不能使用它。

要使您的引导表单工作,您必须创建包含所有字段(4 个表单中的所有字段)的 django 表单,然后:

`............................
def my_view(request):
    if request.method == "POST":
        form = MyForm(request.POST)
        if form.is_valid():
            form.save()
 .....................`

并使用用户创建功能覆盖form.save

【讨论】:

..为什么不使用 Django 的模板渲染器为您渲染表单?.. 我没有说你不应该,我说你不能不需要表单可以正常工作。 好吧,为什么不能你呢?使用表单的一大优势是您不必担心它们的维护 问题作者想要在引导程序中使用已经生成的表单,并且通过 django 生成不简单的表单需要使用小部件的知识/实践,而用于验证的表单不需要这些知识/实践。

以上是关于如何让我的表单在 Django 中工作?的主要内容,如果未能解决你的问题,请参考以下文章

如何使下拉表单在 Ruby On Rails 中工作

Jquery 表单提交不能在 chrome 中工作,但在 Firefox 中工作

如何解决 Http 401 错误,但在邮递员中工作,而不是在 xamarin 表单中工作

clearvalidators 不能在 Angular 6 表单控件中工作

Django 频道:将表单数据传递给消费者

查询集在 shell 中工作,但不在表单中