在Django中配置不正确-success_url

时间:2015-12-31 13:29:05

标签: django url

我对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上看到成功消息。

2 个答案:

答案 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'),