Django表单;'bool'对象没有'get'属性

4

I have the following:

Models.Py

class MyModel(models.Model):

    user = models.ForeignKey(User, max_length=40, blank=False)
    name = models.ForeignKey(Currencies, max_length=40, blank=False) 
    checkbox = models.BooleanField(default=False) 

    def __unicode__(self):
        return self.name

Forms.py

class MyForm(forms.ModelForm):
    class Meta:
        model = MyModel
        fields = (['Name', 'Checkbox'])

Views.py

def test(request):
    if request.method == "POST":
        form = MyForm(request.POST)
        if form.is_valid():
            post = form.save(commit=False)
            post.user = request.user
            post.save()
            return True
else:
    form = AuctionForm()


return render(request, 'test.html', {'form': form})

这个很好用,可以在test.html中显示一个漂亮的表单以供填写。 然而,当我点击保存按钮时,会发生两件事情: 1)我被重定向到debug页面,我看到以下错误信息。
Django Version: 1.8
Exception Type: AttributeError
Exception Value:    
'bool' object has no attribute 'get'

2) 我的模型已经更新,信息确实显示出来了。

我在这里做错了什么?
布尔对象没有 'get' 属性?
那是我的复选框吗?

1个回答

16
你不能在你的视图方法中返回True。视图方法必须要么返回HttpResponse,或者更好的方式是使用redirect重定向到其他的视图,文档请参考redirect

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接