【发布时间】:2020-04-12 13:45:23
【问题描述】:
无法让此表单从我的多选表单字段提交/保存多个输入...
def StaffHome(request):
dates = request.user.availability_set.all()
bookings = request.user.booking_set.all()
if request.method == 'POST':
if 'remove' in request.POST:
form = RemoveDate(request.user, request.POST)
if form.is_valid():
for d in form.cleaned_data['date']:
for i in dates:
if d == str(i.dates):
i.delete()
return redirect('main-home')
elif 'add' in request.POST:
form = AddDate(request.user, request.POST)
if form.is_valid():
for d in form.cleaned_data['date']:
Availability.objects.create(user=request.user, dates=d)
return redirect('main-home')
context = {
'today': datetime.datetime.now().date(),
'bookings': bookings,
'form': AddDate(request.user),
'form2': RemoveDate(request.user),
'dates': dates
}
return render(request, 'users/staffhome.html', context)
我尝试使用 request.POST.getlist('date') 但这会引发方法对象不可下标错误。
【问题讨论】:
-
根据stackoverflow.com/questions/11190070/django-getlist 看来您需要使用
request.POST.getlist('date[]')才能使该方法起作用。