我正在尝试在www.example.com中创建一个函数views.py,该函数可以根据已经提交到数据库中的值检查用户提交的日期:
def make_booking(request):
if request.method == 'POST':
form = BookingForm(request.POST)
if form.is_valid():
new_date = form.cleaned_data.get("date_of_booking")
existing_booking = Booking.objects.get('date_of_booking').items()
for booking in existing_booking:
if booking == new_date:
messages.success(request, "THIS DATE IS ALREADY TAKEN")
else:
form.save()
print('form saved')
if request.user.is_authenticated:
return redirect(get_bookings)
if not request.user.is_authenticated:
return redirect(get_bookings_guest)
如果日期已经存在于数据库中,那么我希望它显示一条消息,说日期已经存在。我已经写了上面的似乎对我来说是正确的,但我得到这个错误:“异常值:
要解包的值太多(应为2)"。
有人能帮帮我吗?
3条答案
按热度按时间13z8s7eq1#
试试这个:
如果form.is有效():
qmb5sa222#
如何过滤数据库中的
Booking
对象以获得所有包含new_date
的条目?根据返回的条目数进行if
比较;如果为零,则new_date
是新日期。假设
new_date
是datetime
对象,您可以执行以下操作:4nkexdtk3#