[英]Value Error when submitting form in Django mysql
在 Django 中提交表單時出現值錯誤。 我已成功連接 XAMPP 中的 MySQL 數據庫。 我找不到解決方案。這是我的表單代碼,
<form class="user" method="POST">
{% csrf_token %}
<div class="form-group">
<input type="text" class="form-control form-control-user" id="Cus_name" name="Cus_name" placeholder="Enter Customer Name...">
</div>
<div class="form-group">
<input type="text" class="form-control form-control-user" id="Cus_address" name="Cus_address" placeholder="Enter Address... ">
</div>
<div class="form-group">
<input type="email" class="form-control form-control-user" id="Cus_email" placeholder="Enter Email Address...">
</div>
<div class="form-group">
<input type="text" class="form-control form-control-user" id="Purpose" placeholder="Enter Purpose...">
</div>
<div class="form-group">
<input type="date" class="form-control form-control-user" id="Date" placeholder="Enter Date...">
</div>
<div class="form-group">
<input type="time" class="form-control form-control-user" id="Time" placeholder="Enter Time...">
</div>
<div class="form-group">
<input type="text" class="form-control form-control-user" id="Venue" placeholder="Enter Venue...">
</div>
<button name="submit" type="submit" class="btn btn-success">Submit</button>
<hr>
</form>
這是我的 Views.py
from django.shortcuts import render
from .models import AppointmentDet
from django.contrib import messages
def InsertDetails(request):
if request.method == 'POST':
if request.POST.get('Cus_name') and request.POST.get('Cus_address') and request.POST.get('Cus_email') and request.POST.get('Purpose') and request.POST.get('Date') and request.POST.get('Time') and request.POST.get('Venue'):
saverecord = AppointmentDet()
saverecord.Cus_name = request.POST.get('Cus_name')
saverecord.Cus_name = request.POST.get('Cus_address')
saverecord.Cus_name = request.POST.get('Cus_email')
saverecord.Cus_name = request.POST.get('Purpose')
saverecord.Cus_name = request.POST.get('Date')
saverecord.Cus_name = request.POST.get('Time')
saverecord.Cus_name = request.POST.get('Venue')
saverecord.save()
messages.success(request, "details saved successfully!")
return render(request, "appform.html")
else:
return render(request, "appform.html")
這是我在運行服務器時遇到的錯誤。
ValueError at / 視圖 Management.views.InsertDetails 未返回 HttpResponse 對象。 它返回 None 。
我嘗試了一些解決方案,但沒有奏效。
你應該閱讀這個關於如何使用表單的小教程:
https://docs.djangoproject.com/en/3.1/topics/forms/
發送數據時,您應該首先將帖子轉換為表單類對象。 然后你必須在所述表單上調用“is_valid()”。
只有在此方法調用后,post 數據才在對象中。
這是來自 Django 的示例:
def get_name(request):
# if this is a POST request we need to process the form data
if request.method == 'POST':
# create a form instance and populate it with data from the request:
form = NameForm(request.POST)
# check whether it's valid:
if form.is_valid():
# process the data in form.cleaned_data as required
# ...
# redirect to a new URL:
return HttpResponseRedirect('/thanks/')
# if a GET (or any other method) we'll create a blank form
else:
form = NameForm()
return render(request, 'name.html', {'form': form})`
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.