Добавить свои нередактируемые поля при редактировании объекта в admin django
6 ноября 2016 г. 1:34
Как оказалось, свои нередактируемые поля при редактировании объекта в django не так и сложно. Для этого нужно в admins.py нашего приложения добавить метод с произвольным именем, передав аргумент obj
(или другой по вкусу) и определив некоторые свойства. Например, чтобы просто отобразить произвольный html-код нужно написать следующее:
@admin.register(Order) class OrderAdmin(admin.ModelAdmin): readonly_fields = ('test_field', ) def test_field(self, obj): return '<a href="\test_page\">Открыть тестовую страницу</a>' test_field.short_description = 'Ссылка' test_field.allow_tags = True
Как видно из примера выше, создаём метод, например test_field(self, obj)
, и добавляем его в список readonly_fields
.
Похожие статьи:
Представляю вашему вниманию книгу, написанную моим близким другом Максимом Макуриным: Секреты эффективного управления ассортиментом.
Книга предназначается для широкого круга читателей и, по мнению автора, будет полезна специалистам отдела закупок и логистики, категорийным и финансовым менеджерам, менеджерам по продажам, аналитикам, руководителям и директорам, в компетенции которых принятие решений по управлению ассортиментом.
Комментарии: 0