在 django admin 中禁用暗模式

disable dark mode in django admin

问题

几个月后我安装了 Django。当前版本是 3.2.4.

早期 Django-admin 只是 light-mode。当前 Django-admin 根据系统主题自动切换到 darklight。好吧,我不想要这种行为。我希望 Django-admin 成为 light theme,而不考虑系统主题。 我没有为 Django-admin.

使用第 3 方主题

我尝试了什么?

根据 回答中的评论之一,

I decided to comment "@media (prefers-color-scheme: dark)" section in /static/admin/css/base.css . Not sure that it's good solution but the fastest one.

我尝试按此处所示对代码进行注释,但不起作用。我尝试清除缓存,甚至尝试切换浏览器,但其中 none 似乎有效。在浏览器中,我总是喜欢浅色主题。我怎样才能做到这一点?任何帮助都是可观的。提前致谢:)


系统详细信息:

OS: Fedora 5.11.12-300.fc34.x86_64

Python-版本: 3.9.5

不幸的是,目前没有用于禁用此行为的功能切换 (django 3.2)。为了只有浅色主题,您应该从 django/contrib/admin/static/admin/css/base.css 文件中删除整个 @media (prefers-color-scheme: dark) 代码块。或者您可以从浏览器渲染选项中禁用 prefers-color-scheme: dark。 chrome 的说明在

中描述

第一种方法:最快的方法是进入您的 OS 设置并将您的主题从 Dark 更改为。如果您使用 Linux,您可能需要 gnome-tweaks 才能在主题之间切换。


第二种方式:

  1. 让我们假设您正在使用名为 venv。现在转到以下目录venv/Lib/site-packages/django/contrib/admin/static/admin/css/base.css
  2. 注释删除prefers-color-scheme: dark的所有代码。它看起来像这样。
@media (prefers-color-scheme: dark) {
  :root {
      /* code */
}
  1. 现在,如果您还执行了 python manage.py collectstatic 和 让我们假设您的静态文件夹名称是 static/。评论 以下文件中 prefers-color-scheme: dark 的所有代码 太:/static/admin/css/base.css

注意: 有时浏览器会将 CSS 文件存储在高速缓存中。要硬重新加载所有CSS文件,硬重新加载管理页面使用Ctrl + Shift + R.

已接受的答案仅为当前用户修复了它。为站点的所有用户修复它的解决方案是相似的,但需要将 base.css 复制到您的 static/css 目录并在那里进行编辑。

或者(这就是我所做的),只需 pip install django-light 并将其添加到 INSTALLED_APPS 之前 django.contrib.admin