Python 获得“成功”;无”;在URL的末尾
我一直试图在django通用视图中使用“UpdateView”。我试图实现的是返回到相同的“UpdateView”页面。 我的代码如下:Python 获得“成功”;无”;在URL的末尾,python,django,django-generic-views,Python,Django,Django Generic Views,我一直试图在django通用视图中使用“UpdateView”。我试图实现的是返回到相同的“UpdateView”页面。 我的代码如下: 我的网址 单击更新按钮后,我希望目标是 /代码/18/更新/ 不管结果如何 /代码/18/更新/无 如何删除结尾处的“无”?谢谢。 现在如果我这样做: #views.py class CodeUpdate(UpdateView): def get_success_url(self): return reverse('update')
我的网址 单击更新按钮后,我希望目标是 /代码/18/更新/ 不管结果如何 /代码/18/更新/无 如何删除结尾处的“无”?谢谢。
现在如果我这样做:
#views.py
class CodeUpdate(UpdateView):
def get_success_url(self):
return reverse('update')
我会得到这个错误
找不到参数为“()”且关键字参数为“{}”的“update”的反转。已尝试1个模式:[u'/code/(?P\d+)/update/']
如何将“pk”值作为反向函数中的参数传递
谢谢。一旦更新成功,它将重定向到
get\u success\u url()
返回的url。由于在该函数中没有返回任何内容,因此将重定向到../update/None
可以从该方法返回适当的url,也可以删除默认行为的该方法。原因正确。默认行为是重定向到更新对象的
get\u absolute\u url
方法的结果,这可能不是OP所寻找的。要再次重定向到对象的更新视图,请为URL模式指定一个名称。然后使用reverse
查找该URL,并从get_success\u URL
返回该URL。如果success\u URL
为None
,则将调用get_absolute\u URL
。Hi@PeterDeGlopper。我试图获取object.id作为反向函数的参数。如果我将它硬编码到反向('update',args=(11,)
,它就可以工作了,我如何动态地执行它呢。谢谢。UpdateView
将要更新的对象保存为self.object
,因此reverse('update',args=(self.object.id))
应该这样做。
#views.py
class CodeUpdate(UpdateView):
def get_success_url(self):
pass
#views.py
class CodeUpdate(UpdateView):
def get_success_url(self):
return reverse('update')