先上成品效果图:
改效果引用的jscolor插件
model.py
class Post(models.Model):
title = models.CharField(max_length=70, verbose_name='标题')
...
def title_color(self):
if self.color is not '':
return format_html('<font style="color: {}">{}</font>', self.color, self.title)
else:
return self.title
title_color.short_description = '标题' # 给title_color函数定义标题,会显示在后台标题上
admin.py
@admin.register(Post)
class PostAdmin(admin.ModelAdmin):
list_display = ['pk', 'title_color']
# 引入静态文件
class Media:
js = [
'/static/admin/js/jscolor.js',
]
如果没有model没有定义title_color.short_description = '标题'
,那么标题会显示如下图,变成英文字母
发表评论