Django admin:删除默认链接

时间:2011-04-08 09:19:11

标签: django django-admin

在django admin中,数据库的一个coloumn始终显示为链接。我们怎样才能避免djano默认为这些元素提供链接。

3 个答案:

答案 0 :(得分:0)

您可以使用 list_display_links 更改要显示为链接的列。 http://docs.djangoproject.com/en/dev/ref/contrib/admin/

答案 1 :(得分:0)

class WhateverAdmin(django.contrib.admin.ModelAdmin):

   def filtered_url_filed(self):
      return '' if self.url_field == self.url_filed.default else self.url_field

   list_display(...
                'filtered_url_field',
                ...)

答案 2 :(得分:0)

我是否正确理解您要显示没有任何链接的列表?如果是这样的话,如果没有一些肮脏的黑客,你就无法做到。这是一个如何欺骗django管理员的例子:

class CheatListDisplayLinks(list):

    def __init__(self, *args):
        self.extend(args)

    def __contains__(self, item):
        if item == 'cheat_field':
            return True
        return super(CheatListDisplayLinks, self).__contains__(item)

class GalleryAdmin(admin.ModelAdmin):
    list_display = CheatListDisplayLinks('name', 'last_updated')
    list_display_links = ['cheat_field']