37

今天我已将 Django 更新到最新版本 3.1。

但是由于某种原因,当登录到管理页面时,我只能看到一个看起来很奇怪的管理页面。

Django 管理员截图

管理员.py

管理员.py

有人可以帮助我出了什么问题,或者我需要修改哪些内容才能返回原始管理页面。

提前致谢

4

5 回答 5

54

在项目的根urls.py文件中,只需添加以下代码即可禁用新的侧边栏功能。

from django.contrib import admin

admin.autodiscover()
admin.site.enable_nav_sidebar = False

参考:

  1. https://docs.djangoproject.com/en/3.1/releases/3.1/#django-contrib-admin
  2. https://docs.djangoproject.com/en/3.1/ref/contrib/admin/#django.contrib.admin.AdminSite.enable_nav_sidebar
于 2020-08-08T10:04:32.223 回答
17

它看起来像是两个问题之一。

  1. 您的浏览器正在缓存旧版本的 CSS / JS,在这种情况下清除缓存并重新加载。

  2. 升级后没有运行./manage.py collectstatic

从你的评论来看,应该是前者。

于 2020-08-19T18:12:49.340 回答
9

您的浏览器正在缓存旧版本的 CSS / JS,在这种情况下清除您的缓存,为此,您需要执行Force Reload

@Tom Carrick,顺便说一句,你是对的。

并在 Chrome 中强制重新加载使用按住 Ctrl 键并按重新加载按钮。Ctrl + F5 也可以

对于 Mozilla Firefox Ctrl + Shift + R

用于开发/生产,即。在服务器上运行

python3 manage.py collectstatic

这将为您带来所有 html 和 css 文件并将其放入您在settings.py中定义的静态文件夹中。

于 2020-12-16T18:26:14.747 回答
1

升级 Django 后,我遇到了侧边栏的问题,如上所述。

清除缓存对我不起作用。运行 collectstatic 也没有。将其添加到 settings.py 中,然后是 collectstatic:

STATICFILES_FINDERS = [
    'django.contrib.staticfiles.finders.AppDirectoriesFinder',
]
于 2021-03-20T20:02:24.940 回答
0

避免此浏览器缓存问题的一种方法是使用默认未启用的 Django 的ManifestStaticFilesStorage

STATICFILES_STORAGE = 'django.contrib.staticfiles.storage.ManifestStaticFilesStorage'

当静态文件的内容发生变化时,文件的 url 也会发生变化。

于 2021-05-03T11:49:13.070 回答