【问题标题】:(Django) how to submit a form with empty fields?(Django)如何提交带有空字段的表单?
【发布时间】:2021-11-09 18:37:05
【问题描述】:

我有一个带有下拉列表的表单,其中包含两个选项(“MCQ”和“SEQ”)和一些字段。选择“MCQ”将隐藏“SEQ”使用的字段,反之亦然。我想提交此表格,但弹出“请填写此字段”通知。我应该怎么做才能提交此表格?

在寻找可能的解决方案之前,我已经搜索了堆栈溢出,有些人建议事先放置“必需”或“禁用”,但是如果可能的话,我想要一种动态的方式,但基于用户选择的选项,因为用户可能会将所有内容都留空,如果不需要,只需提交即可。

附加信息:

  1. 我正在使用 forms.ModelForm,字段来自那里。
  2. 我正在使用js隐藏和显示相关字段。

感谢任何帮助/建议。 :)

【问题讨论】:

  • 我会用 js 来做。您可以在运行时编辑这些

标签: javascript django forms


【解决方案1】:

您的模型不应根据需要定义这些字段,这样在验证表单时它们可以为空:

class MyModel:
   my_field = models.CharField(blank=True, null=True, length=500)
   ...

blank=True 将告诉您的表单如果此字段为空则不会返回错误

【讨论】:

  • 您好,感谢您的回复,我已经停止使用表单,而是决定使用 request.Post() 从 html 页面获取我需要的内容 :)。我意识到我想要创建的东西过于动态和复杂,无法简单地使用表单/表单集。不过还是感谢您的帮助!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-02-14
  • 1970-01-01
  • 1970-01-01
  • 2015-11-04
  • 2018-06-28
相关资源
最近更新 更多