UnboundLocalError at / contact / --- Django 1.8

时间:2015-09-23 20:52:40

标签: django python-2.7 django-forms django-views

我一直收到错误 “在赋值之前引用的局部变量'form_message'在此特定行: “form_full_name,”

这是我在django 1.8中的代码:

it('[test] enrichment', function (done) {

        var self = this;

        async.each(self.tests, function (json, cb) {

            //it('[test] ' + path.basename(json), function (done) {

                var jsonDataForEnrichment = require(json);
                jsonDataForEnrichment.customer.accountnum = "8497404620452729";
                jsonDataForEnrichment.customer.data.accountnum = "8497404620452729";
                var options = {
                    url: self.serverURL + ':' + self.serverPort + '/event',
                    json: true,
                    body: jsonDataForEnrichment,
                    method: 'POST'
                };


               request(options,function (err, response, body) {
                    if (err) {
                        return cb(err);
                    }

                     assert.equal(response.statusCode, 201, "Error: Response Code");
                     cb(null);


                });

            //});

        }, function complete(err) {
            done(err)
        });

    });

1 个答案:

答案 0 :(得分:0)

您的代码混合了标签和空格。 Python将标签扩展为 8个空格,而不是4个,但是你的编辑器和Stack Overflow会这样做。

因此,您的if form.is_valid():阻止form_message = form.cleaned_data.get("message")行结束,并且您的功能的余额 部分if测试:

source text with tabs as lines

缩进中的每一行都是一个标签,我设置我的编辑器为每个标签使用8个空格,这样你就可以看到 Python 如何看待你的功能。

因此,只要if form.is_valid():为假,您的contact_message行仍然执行,form_full_name未定义。

让文本编辑器用4个空格替换所有选项卡,然后将编辑器配置为在用作缩进时展开选项卡。