我試圖在數據庫中將複選框的值保存爲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