基于 Django 类的视图 success_url
我试图在基于 django 类的 UpdateView 上设置 success_url 但无法使其工作。我已经尝试过文档中建议的语法
success_url="/polls/%(slug)s/"
但它不起作用。如何访问 success_url 中的模型字段?
I am trying to set the success_url on a django class based UpdateView but cannot get it to work. I have tried the syntax suggested in the docs
success_url="/polls/%(slug)s/"
But it is not working. How can I access the model fields in the success_url?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这依赖于对象字段属性。在您发布的示例中,模型应该有一个 slug 字段。
对于相关字段:
您可以尝试在
success_url
中使用 django 的 __ 表示法来表示相关对象(例如:user__username
),不确定是否有效。IMO 在这种情况下,更好的做法是覆盖
get_success_url()
,并在考虑self.object
的情况下返回 url。This relies on object field attributes. In the example you've posted, the model should have a slug field.
For related fields:
You can try using django's __ notation for related objects (e.g:
user__username
) insuccess_url
, not sure if it'll work.IMO in such cases a better practice is overriding
get_success_url()
, and returning the url taking into accountself.object
.