如何在视图中反转 Django 管理模板的 URL?
How do I reverse the URL of a Django admin template in a view?
我注册了自定义 Django 管理表单,如何以编程方式在视图中找到模板的 URL?
我知道我的表格位于 /admin/custom_app/horse/
,但我如何以编程方式查找它,以防将来 URL 发生更改?
表单的注册方式如下:
admin.site.register(Horse, HorseAdmin)
首先确定表格的url_name
。使用表单所在的相对地址,并使用 resolve
查找名称,如下所示:
In [1]: from django.urls import resolve
...: match = resolve('/admin/custom_app/horse/')
...: match.url_name
...:
Out[1]: 'custom_app_horse_changelist'
现在您可以使用 reverse
来查找 URL,只记得像这样在前面加上 admin:
前缀:
In [63]: from django.urls import reverse
...: reverse('admin:custom_app_horse_changelist')
Out[63]: '/admin/custom_app/horse/'
我注册了自定义 Django 管理表单,如何以编程方式在视图中找到模板的 URL?
我知道我的表格位于 /admin/custom_app/horse/
,但我如何以编程方式查找它,以防将来 URL 发生更改?
表单的注册方式如下:
admin.site.register(Horse, HorseAdmin)
首先确定表格的url_name
。使用表单所在的相对地址,并使用 resolve
查找名称,如下所示:
In [1]: from django.urls import resolve
...: match = resolve('/admin/custom_app/horse/')
...: match.url_name
...:
Out[1]: 'custom_app_horse_changelist'
现在您可以使用 reverse
来查找 URL,只记得像这样在前面加上 admin:
前缀:
In [63]: from django.urls import reverse
...: reverse('admin:custom_app_horse_changelist')
Out[63]: '/admin/custom_app/horse/'