Администратор Django: удаление ссылок по умолчанию - PullRequest
0 голосов
/ 08 апреля 2011

В администраторе djano в базе данных один из столбцов всегда отображается как ссылка.Как мы можем избежать получения ссылки на эти элементы, которую djano дает нам по умолчанию.

Ответы [ 3 ]

0 голосов
/ 08 апреля 2011
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',
                ...)
0 голосов
/ 08 апреля 2011

Правильно ли я понимаю, что вы хотите отобразить список без каких-либо ссылок?Если это так, то вы не можете сделать это без грязного взлома.Вот пример того, как обмануть администратора 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']
0 голосов
/ 08 апреля 2011

Вы можете использовать list_display_links , чтобы изменить столбцы, которые вы хотите отображать в виде ссылок.http://docs.djangoproject.com/en/dev/ref/contrib/admin/

...