【问题标题】:Styling HTML for model property with verbose name in Django admin在 Django admin 中为具有详细名称的模型属性设置 HTML 样式
【发布时间】:2020-05-07 17:16:40
【问题描述】:

我有一个这样的 Django 模型:

class MyModel (models.Model):
    value = IntegerField()

    def custom_field(self):
        return self.value + 1

然后在我的 admin.py 文件中,我有一个模型:

class MyModelAdmin(admin.ModelAdmin):
     list_display = ('id', 'custom_field')

     def custom_field(self, obj):

        if obj.total_counter_actual != obj.total_counter:
            color = 'red'
            return format_html(
                '<b style="color:{};">{}</b>',
                color,
                obj.custom_field
            )
        else:
            return obj.custom_field
    custom_field.short_description='My custom column name'

尽管列名(暗示详细名称的类似物)和样式都可以按预期工作,但我看到的不是值,而是 &lt;bound method MyModel.custom_field of &lt;MyModel: TEST_VALUE&gt;&gt;。有什么办法解决这个问题?

【问题讨论】:

    标签: django django-admin


    【解决方案1】:

    您缺少 @property 装饰器

    结帐this answerdocumentation

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-06-12
      • 1970-01-01
      • 2011-08-23
      • 2022-06-12
      • 2020-06-26
      • 2020-07-10
      • 1970-01-01
      • 2011-02-22
      相关资源
      最近更新 更多