Почему не работает функция short_description в админке Django?
Я пытаюсь внести некоторые изменения в мою панель администратора django, например, хочу показать "title" вместо "blog_tile", но я не понимаю, почему изменения не отражаются.
class BlogAdmin(admin.ModelAdmin):
readonly_fields = ['blog_publish_time', 'blog_update_time']
list_display = ['blog_title', 'blog_status',
'blog_publish_time', 'blog_update_time']
def rename_blog_title(self, obj):
return obj.blog_title[:10]
rename_blog_title.short_description = "title"
admin.site.register(Blog, BlogAdmin)
где я совершаю ошибку?
Вы используете blog_title, а не rename_blog_title в вашей list_display. Таким образом, вы должны ссылаться на метод, а не на поле вашей модели Blog:
class BlogAdmin(admin.ModelAdmin):
readonly_fields = ['blog_publish_time', 'blog_update_time']
list_display = ['rename_blog_title', 'blog_status', 'blog_publish_time', 'blog_update_time']
def rename_blog_title(self, obj):
return obj.blog_title[:10]
rename_blog_title.short_description = 'title'
admin.site.register(Blog, BlogAdmin)