【问题标题】:Interdependent validation of form and formset表单和表单集的相互依赖验证
【发布时间】:2015-01-15 23:50:16
【问题描述】:

我有一个视图允许创建发票,方法是通过普通 Django 表单 (InvoiceForm) 提示发票标题信息,并在同一页面上使用表单集 (ItemForm) 提示行项目信息。这已经好几年了。

我想引入一个新的验证标准,它引用表单中的一个值(特别是发票日期)和每个表单集条目中的一个值(税率)。我看不到 InvoiceForm 验证函数引用 ItemForm 值的方法,反之亦然 - 我只需要在视图中手动执行验证并将错误注入其他有效表单吗?

【问题讨论】:

    标签: django validation django-forms


    【解决方案1】:

    如果它们在同一个页面中,并且在同一个<form> 标记内,那么您应该能够在验证 Django POST 后视图(表单的操作)中相互访问。

    您的另一种方法是使用 javascript/ajax 调用在页面上的两个表单之间进行验证。

    【讨论】:

    • 好的,所以基本上正如我所怀疑的那样 - 我不能使用各种 clean 函数,但必须在视图的 if request.method == 'POST' 部分单独处理验证?
    • 我相信。您也许可以创建一个继承两个模型表单的组合自定义表单。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-26
    • 1970-01-01
    • 1970-01-01
    • 2021-08-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多