Python 我如何保存复选框中的输入,当我只选中框中的一个选项时,它会给我一个错误
如何保存复选框中的输入,当我选中复选框中的选项1并保存时,会出现一个错误,表示选项2没有值,反之亦然。但是当我把它们都标上的时候。我能够将它保存到数据库中,问题是在我的数据库中,如果没有输入,它应该只显示值1或0以及null 这是我现在的html代码Python 我如何保存复选框中的输入,当我只选中框中的一个选项时,它会给我一个错误,python,django,Python,Django,如何保存复选框中的输入,当我选中复选框中的选项1并保存时,会出现一个错误,表示选项2没有值,反之亦然。但是当我把它们都标上的时候。我能够将它保存到数据库中,问题是在我的数据库中,如果没有输入,它应该只显示值1或0以及null 这是我现在的html代码 <div class="col-md-6"> <div class="form-group bmd-form-group"> <input type="checkbox" name="is_re
<div class="col-md-6">
<div class="form-group bmd-form-group">
<input type="checkbox" name="is_regular" value="1"> Regular<br>
<input type="checkbox" name="is_special" value="0"> Special<br>
</div>
</div>
Views.py
def add_holidays(request):
holiday_name = request.POST['holiday_name']
date_start = request.POST['date_start']
date_end = request.POST['date_end']
is_regular = request.POST['is_regular']
is_special = request.POST['is_special']
holiday_info = Holiday(
holiday_name=holiday_name,
date_start=date_start,
date_end=date_end,
is_regular=is_regular,
is_special=is_special
)
holiday_info.save()
return render(request, 'holidays.html')
如果没有输入,它应该只显示值1或0以及null
假设为常规值
且为特殊值
接受空值,则可以使用:
def add_holidays(request):
holiday_name = request.POST['holiday_name']
date_start = request.POST['date_start']
date_end = request.POST['date_end']
is_regular = request.POST.get('is_regular', None) # <-------
is_special = request.POST.get('is_special', None) # <-------
holiday_info = Holiday(
holiday_name=holiday_name,
date_start=date_start,
date_end=date_end,
is_regular=is_regular,
is_special=is_special
)
holiday_info.save()
return render(request, 'holidays.html')
def添加假日(请求):
假日名称=请求。发布['假日名称']
date\u start=请求。POST['date\u start']
date\u end=请求。POST['date\u end']
is_regular=request.POST.get('is_regular',None)#我认为您可以将相同名称的复选框组合在一起:
<div class="col-md-6">
<div class="form-group bmd-form-group">
<input type="checkbox" name="is_regular_or_special" value="1"> Regular<br>
<input type="checkbox" name="is_regular_or_special" value="0"> Special<br>
</div>
</div>
因此,该值将是o或1。o表示特殊,1表示常规
我认为您不需要两个数据库字段。可以使用一个字段来保存值,而不是使用两个字段
此外,如果您需要显示值,您可以轻松地从字段中选择值,并根据您可能决定的值确定是常规值还是特殊值请同时包括您的假日
型号。
<div class="col-md-6">
<div class="form-group bmd-form-group">
<input type="checkbox" name="is_regular_or_special" value="1"> Regular<br>
<input type="checkbox" name="is_regular_or_special" value="0"> Special<br>
</div>
</div>
def add_holidays(request):
holiday_name = request.POST['holiday_name']
date_start = request.POST['date_start']
date_end = request.POST['date_end']
is_regular_or_special= request.POST['is_regular_or_special']