问题 如何从视图中为Django管理站点中的特定项生成URL?


我想建立一个链接,将用户带到管理站点中的特定项目(假设他们具有正确的权限)。

就像是: https://开头的mysite /管理/应用程序/模型/ ID / 

这可以用反向来完成吗?


8593
2017-11-08 22:06


起源

看到 stackoverflow.com/questions/694477/... - second
@second--这个问题来自于好的旧Django 1.0天,所以有很多噪音。我试图总结下面的信息。 - Alasdair


答案:


您可以使用在视图中获取网址 reverse

object_change_url = reverse('admin:myapp_mymodel_change', args=(obj.id,))

或者在模板中,使用url标记

{% url 'admin:myapp_mymodel_change' obj.id %}

要么

{% load admin_urls %}
{% url obj|admin_urlname:'change' obj.id %}">

请注意,上面的url标记语法适用于Django> = 1.5。

有关更多信息,请参阅Django文档 撤消管理员网址


16
2017-11-08 22:17