Cer*_*rin 4 python django django-admin
如何查找任意模型的管理员更改网址?
如果我知道模型,我可以通过以下方式获取网址:
>>> print urlresolvers.reverse('admin:myapp_mymodel_change', args=(obj.id,))
/admin/myapp/mymodel/123/
Run Code Online (Sandbox Code Playgroud)
我在模型上有一个通用外键,我想在admin中为对象的相应更改页面提供一个链接.由于它可以是任何类型的模型,我不能轻易使用reverse().有什么方法我可以简单地这样做以下?
>>> get_admin_change_url(obj)
/admin/myapp/mymodel/123/
Run Code Online (Sandbox Code Playgroud)
获得对象后,可以在其_meta类上访问其应用程序标签和名称,然后动态构造管理员更改URL的名称.
app_label = obj._meta.app_label
model = obj._meta.module_name
reverse('admin:%s_%s_change' % (app_label, model), args=(obj.id,))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
788 次 |
| 最近记录: |