Django在formModel中反转

时间:2018-11-22 14:25:00

标签: django reverse modelform

在我的views.py中,我有一个使用(CreateView)的类,而在form_class中的一个是在forms.py中使用了一个Testform

问题是当我使用form.py时,我使用def save(...)方法,它可以正确保存数据,但是之后无法撤消

它对我说,无论我试图返回什么,它都说 “没有URL可以重定向到。要么在模型上提供一个URL,要么定义一个get_absolute_url方法。”

好吧,所以我在所有地方都尝试过使用此方法,但是没有办法,它总是给我这个错误

1 个答案:

答案 0 :(得分:0)

这取决于创建新对象后要将用户重定向到的位置。

示例设置:

  • CreateView在urls.py中配置了网址r'^mymodel/new/', name='mymodel_create'
  • DetailView在urls.py中配置了网址r'^mymodel/:pk/', name='mymodel_detail'

您可以这样定义get_absolute_url:

class MyModel(Model):
    # field definitions...

    def get_absolute_url(self):
        return reverse('mymodel_detail', kwargs={'pk': self.pk})

然后创建一个新对象将重定向到DetailView。