【问题标题】:Changing entire background color of table cell in Django Admin在 Django Admin 中更改表格单元格的整个背景颜色
【发布时间】:2016-05-01 03:33:15
【问题描述】:

我正在尝试为整个 Django 表格单元格着色,以下代码仅对 Django Admin 中的文本进行着色,而不是整个表格单元格。目前的样子:

这是当前代码

class Student(models.Model):

    def city_and_zip(self):
        if self.city_zip:
            cell_html = '<div style = "background-color:#e6f2ff;">%s</div>'
        else:
            cell_html = '<div>%s</div>'

        return cell_html % self.city_zip

    city_and_zip.allow_tags = True

再次,它正确地着色......但只是在某种程度上。我想为整个单元格着色。将 div 更改为 th 也不起作用

【问题讨论】:

    标签: python html django django-admin


    【解决方案1】:

    当您为 modelAdmin 声明 list_display 时,td 元素包含此字段具有类似 field-'list_display_name' 的 css 类。我的情况是 field-city_and_zip.
    所以你可以为这个类添加css选择器。 Django 为这种方法提供了许多解决方案。这是一个:

    class StudentAdmin(admin.ModelAdmin):
    
        @property
        def media(self):
            media = super(ProductAdmin, self).media
            css = {
                "all": (
                    "css/your.css",
                )
            }
            media.add_css(css)
            return media 
    

    另一方面,你可以在你的管理模型中写class Media

    class StudentAdmin(admin.ModelAdmin):
    
        class Media:
            css = {"all":("css/your.css",)}
    

    然后把这个css文件放到你的静态路径中,写选择器:

    .field-city_and_zip {
         background-color: #e6f2ff;
    }
    

    它应该像你需要的那样工作。您也可以将 css 直接放在管理基本模板中
    more information about admin page

    【讨论】:

      【解决方案2】:

      您可以通过两种方式更改管理 CSS 资产:

      1. 模型级别:将所需的 css 文件添加到您的管理模型。

        class MyModelAdmin(admin.ModelAdmin):
            class Media:
                js = ('js/admin/my_own_admin.js',)    
                css = {
                    'all': ('css/admin/my_own_admin.css',)
                }
        
      2. 模板级别:如果您想更改管理员的外观,您应该覆盖管理员模板。这在此处详细介绍:Overriding admin templates

      有时您可以只扩展原始管理文件,然后覆盖 django/contrib/admin/templates/admin/base.html 中的 {% block extrastyle %}{% endblock %} 之类的块,例如。

      【讨论】:

        猜你喜欢
        • 2017-03-10
        • 2013-06-15
        • 2017-03-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-09-24
        • 2013-04-12
        相关资源
        最近更新 更多