0

所以我一直遇到这个问题,我的基于类的编辑(CreateView 和 UpdateView)视图未能在我的模型的随机选择上一致地重定向,说 get_absolute_url 没有定义,即使它是针对这些模型的。我在实际的基于类的视图中进行了一些调试,我意识到这是因为在 get_success_url() 方法中,self.object 为 None,但运行 self.get_object() 返回正确的对象。我很好奇为什么 self.object 不会,但 self.get_object 在这种情况下会起作用,我有点知道如何解决这个问题,但我觉得我可能不应该这样做可能意味着我的部分过程不正确,虽然我不知道什么,因为我正在编写简单的模型,在我的 CreateView 和 UpdateViews 中定义 get_absolute_url 并设置 model 和 form_class。有没有人遇到过这个问题?

4

1 回答 1

0

我刚刚意识到问题是我已经在我的 ModelForm 中为这些类覆盖了 save ,尽管我保存了对象,但我没有返回它们。退回他们解决了这个问题。查看 ModelFormMixin 的 form_valid 向我展示了解决方案。

于 2012-12-09T06:39:44.683 回答