Django表单返回is_valid()= False,没有错误 [英] Django form returns is_valid() = False and no errors

查看:1025
本文介绍了Django表单返回is_valid()= False,没有错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在django应用程序中有简单的视图,我只想在其中一个表单有效时显示。我有这样的东西:

I have simple view in django app, which I want to show only when one of the forms is valid. I have something like:

@login_required
@require_role('admin')
def new_package(request):
    invoicing_data_form = InvoicingDataForm(instance=request.user.account.company.invoicingdata)
    if invoicing_data_form.is_valid():
        # all here
        return HttpResponse('Form valid')
    else:
        logger.info("Form invalid")
        return HttpResponse(json.dumps(invoicing_data_form.errors)

我总是收到表单无效的日志信息,但是,我没有在

I always get log info message that form is invalid, however, I get nothing in

invoicing_data_form.errors

这是非常奇怪的,因为我正在验证此表单任何想法?

It is very strange, because I am validating this form in other view using user input data and it works just fine. Any idea?

编辑:
仅用于澄清
我没有请求任何数据从这个窗体的用户
我正在使用这个表单验证一些模型实例(这个形式是子类化fr om ModelForm)。

Just for clarification. I am not requesting any data from user in this form. I am using this form to validate some model instance (this form is subclassing from ModelForm).

推荐答案

这是因为你不是喂你的表单。

That's because you're not "feeding" your form.

执行此操作:

invoicing_data_form = InvoicingDataForm(instance=invoice, data=request.POST or None)

这篇关于Django表单返回is_valid()= False,没有错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆