我对success_url有疑问,而不是网站我看到一个不正确配置的TemplateResponseMixin需要定义' template_name'或者' get_template_names()'的实现。 这是我的views.py:
class CarRentView(SuccessMessageMixin, CreateView):
form_class = CarRentForm
success_url = reverse_lazy('cars')
success_message = "You rent a car"
my models.py:
class Rental(models.Model):
rentus = models.ForeignKey(User, null=True)
rentcar = models.ForeignKey(Car, null=True)
和forms.py:
类CarRentForm(forms.ModelForm):
class Meta:
model = Rental
fields = '__all__'
和我的网址:
url(r'^car/rent$', CarRentView.as_view(), name = 'rent'),
我想在租用之后用户会在carite上看到成功消息。
答案 0 :(得分:1)
成功提交表单后,您将重定向到名为cars
的网址。您尚未显示此视图,但错误消息告诉您尚未为其设置template_name
。您应该添加如下内容。
class CarView(...):
template_name = 'cars.html'
答案 1 :(得分:0)
您需要为成功页面显示的模板命名:
url(r'^car/rent$', CarRentView.as_view(template_name="success.html"), name = 'rent'),