如何在views.py中重定向CreateView的URL

时间:2019-04-14 08:46:46

标签: django

  1. class A_modelCreateView(CreateView) in views.py
  2. urls.py中的
  3. path('create/'),view.A_modelCreateView().as_view(),name='create'
  4. 为A_model表单构建HTML作为表单,但不在其默认目录(my_app / A_model.form)

是否在某处填充了参数以重定向所需的网址?

1 个答案:

答案 0 :(得分:1)

是的,CreateView具有FormMixin作为其基类之一。该FormMixin类具有success_url attribute [Django-doc]

您可以添加真实的URL,或与reverse_lazy [Django-doc]一起根据视图名称计算URL。例如:

from django.urls import reverse_lazy
from django.views.generic.edit import CreateView

class A_modelCreateView(CreateView):
    success_url = reverse_lazy('overview_page')
    # ...

其中overview_page是假设视图的名称。

如果您success_urlCreateView中指定UpdateView,则会采用模型对象的get_absolute_url如果模型具有这种方法,则创建/更新。有关更多信息,请参见Django documentation