一尘不染

在Django中覆盖Admin CSS

django

我想更改admin django中的某些CSS,例如base.css。直接在Django库中进行更改是否更好?如何以最佳方式覆盖它?


阅读 445

收藏
2020-03-27

共1个答案

一尘不染

这取决于你要做什么。虽然首先:不要直接在Django管理员中覆盖它。我认为你有两种选择是合理的:

通常,如果要更改管理员的外观,则应覆盖管理模板。此处详细介绍:覆盖管理模板。有时候,你可以扩展原始管理文件,然后覆盖块就像{% block extrastyle %}{% endblock %}在django/contrib/admin/templates/admin/base.html作为一个例子。
如果你的样式是特定于模型的,则可以通过中的Mediameta类添加其他样式admin.py。在这里查看示例:

class MyModelAdmin(admin.ModelAdmin):
    class Media:
        js = ('js/admin/my_own_admin.js',)    
        css = {
             'all': ('css/admin/my_own_admin.css',)
        }
2020-03-27