Django 2.0 CreateView不工作
我刚到Django。不确定这是错误还是错误 这是我在一个名为gcbv的应用程序中的模型,用于基于类的通用视图Django 2.0 CreateView不工作,django,Django,我刚到Django。不确定这是错误还是错误 这是我在一个名为gcbv的应用程序中的模型,用于基于类的通用视图 from django.db import models from core.models import TimeStampModel from django.urls import reverse # Create your models here. class Vehicle(TimeStampModel): maker = models.CharField(max_leng
from django.db import models
from core.models import TimeStampModel
from django.urls import reverse
# Create your models here.
class Vehicle(TimeStampModel):
maker = models.CharField(max_length=100)
model_year = models.IntegerField()
vehicle_type = models.CharField(max_length=100)
slug = models.SlugField(max_length=100, unique=True)
vehicle_model = models.CharField(max_length=100)
website = models.URLField(max_length=100, blank=True)
email = models.EmailField(max_length=100, blank=True)
notes = models.TextField(blank=True, default='')
def __str__(self):
x = self.maker + ' ' + self.vehicle_model
return x
以下是网址:
from django.contrib import admin
from django.urls import path, include
from django.conf.urls import url
from . import views
from django.urls import reverse
#from django.views.generic.base import TemplateView
app_name = 'gcbv'
urlpatterns = [
path('sub1/', views.SubView.as_view(), name='sub1'),
path('vehicle_list/', views.VehicleListView.as_view(),
name = 'vehicle_list'),
path('vehicle/<str:slug>/',
views.VehicleDetailView.as_view(),
name='vehicle_detail'),
path('vehicle/create', views.VehicleCreateView.as_view(),
name='vehicle_create'),
path('', views.IndexTemplateView.as_view(), name='index'),
]
以下是模板:
{% extends "core/base.html" %}
{% block body_block %}
<h1>Vehicle Create for GCBV</h1>
<form action="POST" action="">
{% csrf_token %}
{{ form.as_p }}
<button name="submit" class="btn btn-primary">Submit</button>
</form>
<h1>End Vehicle Create for GCBV</h1>
{% endblock %}
看起来好像数据没有保存在数据库中,但是当我直接在管理页面手动添加相同的数据时,一切正常。我附上了另一个屏幕截图,显示VehicleDetailView已找到相关模板并呈现了信息
任何帮助都将不胜感激
注意:当我使用函数视图和正则表达式而不是路径时,一切都很好
形式
提交后
名单
细节
好的,这就是我们七旬老人所说的老年时刻。我已经盯着这个代码看了两天,没有看到明显的问题
方法=发布
不是
行动=员额
非常非常感谢在模板的第四行中,方法应该等于post
{% extends "core/base.html" %}
{% block body_block %}
<h1>Vehicle Create for GCBV</h1>
<form method="POST" action="">
{% csrf_token %}
{{ form.as_p }}
<button name="submit" class="btn btn-primary">Submit</button>
</form>
<h1>End Vehicle Create for GCBV</h1>
{% endblock %}
如下面的回答所述,您在调用属性action时应该是method='post'
{% extends "core/base.html" %}
{% block body_block %}
<h1>Vehicle Create for GCBV</h1>
<form method="POST" action="">
{% csrf_token %}
{{ form.as_p }}
<button name="submit" class="btn btn-primary">Submit</button>
</form>
<h1>End Vehicle Create for GCBV</h1>
{% endblock %}