Django 查看错误未返回HttpResponse对象
我正在django中为一个视图工作,我目前正在处理一个模型表单:我检查学生是否已经创建,如果已经创建,我将只更新该学生的信息,如果需要,我会将条目添加到某个事件中;如果不是,我创建一个学生并将条目添加到事件中 如果我创建了一个新的学生(除了第一次尝试之外),该网页可以正常工作,但是当我尝试获取已经存在的学生时,该页面会给我一个错误,即没有返回HttpResponse对象。你能帮我吗Django 查看错误未返回HttpResponse对象,django,django-models,django-views,Django,Django Models,Django Views,我正在django中为一个视图工作,我目前正在处理一个模型表单:我检查学生是否已经创建,如果已经创建,我将只更新该学生的信息,如果需要,我会将条目添加到某个事件中;如果不是,我创建一个学生并将条目添加到事件中 如果我创建了一个新的学生(除了第一次尝试之外),该网页可以正常工作,但是当我尝试获取已经存在的学生时,该页面会给我一个错误,即没有返回HttpResponse对象。你能帮我吗 def reserve(request, event_id): event = get_object_or_4
def reserve(request, event_id):
event = get_object_or_404(Event, pk=event_id)
if request.method == 'POST':
form = StudentForm(request.POST)
if form.is_valid():
try:
student = Student.objects.filter(UID=form.cleaned_data['UID'])
#student.first_name=form.cleaned_data['first_name']
#student.last_name=form.cleaned_data['last_name']
msg = 'Student found, added to reserve for this event!'
except Student.DoesNotExist:
student = Student.objects.create(UID=form.cleaned_data['UID'], first_name=form.cleaned_data['first_name'], last_name=form.cleaned_data['last_name'])
msg = 'Contact created, reserve successful!'
obj, created = Reservetoevent.objects.get_or_create(m_event=event, m_student = student)
return render(request, 'events/reserve.html', {
'form': form,
'event': event,
'msg': msg,
})
else:
form = StudentForm()
return render(request, 'events/reserve.html', {
'form': form,
'event': event,
})
您的表单.is_有效:is false。因为您在那里的最后一次返回是在else中,意思是request.method==GET,所以没有响应。
将您的最后一次返程向左移动。这应该可以解决问题。但它无法解决表单无效的原因
def reserve(request, event_id):
event = get_object_or_404(Event, pk=event_id)
if request.method == 'POST':
form = StudentForm(request.POST)
if form.is_valid():
try:
student = Student.objects.filter(UID=form.cleaned_data['UID'])
#student.first_name=form.cleaned_data['first_name']
#student.last_name=form.cleaned_data['last_name']
msg = 'Student found, added to reserve for this event!'
except Student.DoesNotExist:
student = Student.objects.create(UID=form.cleaned_data['UID'], first_name=form.cleaned_data['first_name'], last_name=form.cleaned_data['last_name'])
msg = 'Contact created, reserve successful!'
obj, created = Reservetoevent.objects.get_or_create(m_event=event, m_student = student)
return render(request, 'events/reserve.html', {
'form': form,
'event': event,
'msg': msg,
})
else:
form = StudentForm()
return render(request, 'events/reserve.html', {
'form': form,
'event': event,
})
你是通过ajax发布还是通过普通的整版发布?