Python my form.is _valid()函数在django中返回假值。请检查以下文件以了解有关此问题的更多信息
下面是models.py文件中的代码 它有一些字段 models.pyPython my form.is _valid()函数在django中返回假值。请检查以下文件以了解有关此问题的更多信息,python,django,django-models,django-forms,django-views,Python,Django,Django Models,Django Forms,Django Views,下面是models.py文件中的代码 它有一些字段 models.py from django.db import models class Measurement(models.Model): location = models.CharField(max_length=200) destination = models.CharField(max_length=200) distance = models.DecimalField(max_digits=10, dec
from django.db import models
class Measurement(models.Model):
location = models.CharField(max_length=200)
destination = models.CharField(max_length=200)
distance = models.DecimalField(max_digits=10, decimal_places=2)
created = models.DateTimeField(auto_now_add=True)
def __str__(self):
return f"distance from {self.location} to {self.destination} is {self.distance}"
在views.py中,我试图将表单中的一些数据插入表中
views.py
from django.shortcuts import render, get_object_or_404
from .models import Measurement
from .forms import MeasurementModelForm
# Create your views here.
def calculate_distance_view(request):
obj = get_object_or_404(Measurement,id=2)
form = MeasurementModelForm(request.POST or None)
if form.is_valid():
print("valid")
instance = form.save(commit=False)
instance.destination = form.cleaned_data.get('destination')
instance.location = 'san francisco'
instance.distance = 5000.00
instance.save()
else:
print("not valid")
print(form.errors)
context = {
'distance' : obj,
'form' : form,
}
return render(request,'measurements/main.html', context)
main.html
{% extends 'base.html' %}
{% block title %}
calculate distance
{% endblock title %}
{% block content %}
{{ distance }}
<hr>
<form action="" method="post" autocomplete="off"></form>
{% csrf_token %}
{{ form.as_p }}
<button type="submit" class="btn btn-primary" >confirm</button>
</form>
{% endblock content %}
{%extends'base.html%}
{%block title%}
计算距离
{%endblock title%}
{%block content%}
{{distance}}
{%csrf_令牌%}
{{form.as_p}}
确认
{%endblock内容%}
在控制台中,form.errors为空
python控制台
C:\Users\vishnu.vijaykumar\Desktop\src>python manage.py运行服务器
使用StatReloader监视文件更改
正在执行系统检查
系统检查未发现任何问题(0静音)
2020年9月26日-13:46:55
Django版本3.1.1,使用设置“距离项目设置”
正在启动开发服务器
使用CTRL-BREAK退出服务器
无效
[26/Sep/2020 13:47:00]“GET/HTTP/1.1”200 1394你能给我看看你的表格吗。。我在main.html中有一个额外的结束表单标记