python - 如何避免 form.is_valid() 在 Django 中将空字段标记为错误?

标签 python django django-forms django-templates

我有一个用于更新表格的模板。但是,用户可以选择更新一个字段或所有字段。有可能他不会更新所有字段,所以我希望能够运行 form.is_valid(),但我不想让它在有空的情况下返回 false几乎肯定会有的形式的字段。

我不想在表单中使用 required=False,因为还有另一个模板使用相同的表单,用户必须填写几乎所有的字段。

最佳答案

最简单的做法可能是将表单子(monad)类化并在子类中设置 required=False,重复字段定义或在 __init__ 中进行。否则,您可以在 View 中设置 required=False,例如:

def some_view(request):
    if request.METHOD == 'POST':
        form = SomeFormClass(request.POST)
        form.fields['fieldname'].required = False
        if form.is_valid():
            # etc

关于python - 如何避免 form.is_valid() 在 Django 中将空字段标记为错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29186011/

相关文章:

python - 延迟特定请求的 Django HttpResponse

python - google answers 如何使用 .py 文件?

django - 在 OS X 上安装 Spatialite for python (GeoDjango)

隐藏但需要 OneToOneField 的 Django 创建 ModelForm

python - Django 表单 : ManyToMany inline creation

python - Django 1.10 模板的默认身份验证路径

Python:在 Linux 上更改指定 MIME 类型的默认应用程序

python - 尝试使用 ElasticSearch 后端更新索引时出错

python - 在 uwsgi chain-raload 期间预热 django 应用程序

javascript - jquery onclick 没有发生 - Django