码迷,mamicode.com
首页 > Web开发 > 详细

Django Admin Cookbook-38如何获取特定对象的Django Admin后台URL

时间:2020-01-14 16:00:22      阅读:88      评论:0      收藏:0      [点我收藏+]

标签:一个   self   blog   child   play   form   对象   com   mod   

38.如何获取特定对象的Django Admin后台URL?

Hero模型有一个children字段,显示每个英雄的孩子的名字。你被要求将每个childrin链接到Hero模型更改页面。实现如下:

@admin.register(Hero)
class HeroAdmin(admin.ModelAdmin, ExportCsvMixin):
    ...
    def children_display(self, obj):
        display_text = ", ".join([
            "<a href={}>{}</a>".format(
                    reverse('admin:{}_{}_change'.format(obj._meta.app_label, obj._meta.model_name),
                    args=(child.pk,)),
                child.name)
             for child in obj.children.all()
        ])
        if display_text:
            return mark_safe(display_text)
        return "-"

以上的reverse(‘admin:{}_{}_change‘.format(obj._meta.app_label, obj._meta.model_name), args=(child.pk,))返回一个对象后台修改页的URL。

其他页面如下:

  • 删除页URL: reverse(‘admin:{}_{}_delete‘.format(obj._meta.app_label, obj._meta.model_name), args=(child.pk,))
  • 历史页URL: reverse(‘admin:{}_{}_history‘.format(obj._meta.app_label, obj._meta.model_name), args=(child.pk,))

返回目录

Django Admin Cookbook-38如何获取特定对象的Django Admin后台URL

标签:一个   self   blog   child   play   form   对象   com   mod   

原文地址:https://www.cnblogs.com/superhin/p/12192363.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!