在使用食谱的 Django 应用程序中,我已将其子类化DeleteView
以创建我的IngredientListItemDeleteView
,但我希望结果get_success_url
取决于刚刚删除的项目的属性。
我想做这样的事情:
def get_success_url(self):
item = get_object_or_404(IngredientListItem, pk=self.kwargs['pk']) # -> 404
return this_item.recipe.get_absolute_url()
我知道我收到 404 错误,因为相关项目不再存在,但我没有运气在删除之前存储有关该项目的相关信息(即其包含的配方)。例如,如果我在get
方法中放入任何代码,例如
self.success_url = get_object_or_404(IngredientListItem,
pk=self.kwargs['pk']).recipe.get_absolute_url()
然后在success_url
查看时(删除后),它的值为无。
如何使我的成功 URL 取决于已删除项目的此属性?