В Django в админке вывести ссылку

В Django в админке вывести ссылку

Настроить отображение модели в админке Django - не сложно. Достаточно переопределить класс модели в админке. А чтобы в отображении модели участвовали теги, нужно в классе определить метод, который будет возвращать html-теги и активировать флаг allow_tags для конкретного поля с тегами.

class CategoryAdmin(admin.ModelAdmin):
    """
    модель категорий
    """
    list_display = ('get_category_link_name', 'description',  'parent', 'date_created', 'trash')
    list_select_related = True

    def get_category_link_name(self, obj):
        """
        Ссылка в названии категории
        """
        url = reverse('admin:contest_category_change', args=(obj.id,))
        html = '<a href="{0}">{1}</a>'.format(
            url, obj.name)
        return html
    get_category_link_name.allow_tags = True

admin.site.register(Category, CategoryAdmin)

Обязательно, метод который  возвращает html-теги не должен быть статическим, иначе в админке теги будут показываться как обычный текст.

0 Комментариев

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

/wp-content/plugins/wp-monalisa/icons/wpml_bye.gif 
/wp-content/plugins/wp-monalisa/icons/wpml_good.gif 
/wp-content/plugins/wp-monalisa/icons/wpml_negative.gif 
/wp-content/plugins/wp-monalisa/icons/wpml_scratch.gif 
/wp-content/plugins/wp-monalisa/icons/wpml_wacko.gif 
/wp-content/plugins/wp-monalisa/icons/wpml_yahoo.gif 
/wp-content/plugins/wp-monalisa/icons/wpml_cool.gif 
/wp-content/plugins/wp-monalisa/icons/wpml_heart.gif 
/wp-content/plugins/wp-monalisa/icons/wpml_rose.gif 
/wp-content/plugins/wp-monalisa/icons/wpml_smile.gif 
/wp-content/plugins/wp-monalisa/icons/wpml_whistle3.gif 
/wp-content/plugins/wp-monalisa/icons/wpml_yes.gif 
/wp-content/plugins/wp-monalisa/icons/wpml_cry.gif 
/wp-content/plugins/wp-monalisa/icons/wpml_mail.gif 
/wp-content/plugins/wp-monalisa/icons/wpml_sad.gif 
/wp-content/plugins/wp-monalisa/icons/wpml_unsure.gif 
/wp-content/plugins/wp-monalisa/icons/wpml_wink.gif 
 

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <img src="" alt="" class="" width="" height="">