我试图在数据库中将复选框的值保存为true或false。我必须为此使用一个模型。如果该框被选中,则保存'1'的值。但是,如果未选中该复选框我得到的错误信息:Django:如何在数据库中将复选框的POST.get保存为false(0)?
Django Version: 1.9.4
Exception Type: IntegrityError
Exception Value: (1048, "Column 'completed' cannot be null")
目前我的设置是这样的:
在models.py我:
class myClass(models.Model):
completed = models.BooleanField(default=False, blank=True)
在views.py我有:
def create_myClass(request):
completed = request.POST.get('completed')
toSave = models.myClass(completed=completed)
toSave.save()
,并在HTML我有:
<label class="col-md-5" for="completed"> Completed: </label>
<input id="completed" type="checkbox" name="completed">
我试图设定要求=在BooleanField虚假一些其他职位建议,但随后出现错误:TypeError: __init__() got an unexpected keyword argument 'required'
。
我也试图设置 '已完成',以假像views.py:(?不知道我的语法是正确的)
if request.POST.get('completed', False):
commpleted = False
和
completed = request.POST.get('completed')
if completed == 'null':
commpleted = False
但无论工作
任何意见或建议,非常感谢!
项目经理特别想要的车型,如这一点,因为他希望将其用于其他东西(不是100%肯定所有的推理诚实)。 – SuperCow
completed = request.POST.get('completed','')=='on'似乎工作!非常非常感谢你! – SuperCow
那么,在这种情况下,模型和形式是两个不同的东西。您现在已经有了一个模型,您需要将它与表单关联起来,以便在UI中呈现它,然后处理您提交的数据。你可以阅读更多关于如何在上面的链接工作。 – AKS