我是python&的新手Django的。我已经学会了两者的基本知识,并创建了一个名为 PythonDjangoDemo 的简单项目。我在开发期间访问过管理员网址。但是我无法在python-django项目中为admin url加载css。首先让我们看一下项目结构。我有 -
PythonDjangoDemo
|--- PythonDjangoDemo
| |--- __init__.py
| |--- settings.py
| |--- urls.py
| |--- wsgi.py
|--- static_cdn
| |--- admin
| | |--- css
| | | |---base.css
| | | |---login.css
| | |--- fonts
| | |--- img
| | |--- js
|--- media_cdn
|--- templates
|--- manage.py
|--- db.sqlite3
让我们来看看settings.py
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
... ... ...
STATIC_URL = '/static/'
MEDIA_URL = "/media/"
STATIC_ROOT = os.path.join(os.path.dirname(BASE_DIR), "static_cdn")
MEDIA_ROOT = os.path.join(os.path.dirname(BASE_DIR), "media_cdn")
我已将我所有的css用于管理网址" static_cdn / admin / css"。当我尝试访问" 127.0.0.1:800 / admin"我没有收到任何错误。这是控制台输出 -
[30/Apr/2017 16:04:58] "GET /admin/ HTTP/1.1" 302 0
[30/Apr/2017 16:04:59] "GET /admin/login/?next=/admin/ HTTP/1.1" 200 1650
[30/Apr/2017 16:04:59] "GET /static/admin/css/base.css HTTP/1.1" 200 16066
[30/Apr/2017 16:04:59] "GET /static/admin/css/login.css HTTP/1.1" 200 1203
Not Found: /favicon.ico
[30/Apr/2017 16:04:59] "GET /favicon.ico HTTP/1.1" 404 2329
请你解释一下
答案 0 :(得分:0)
答案 1 :(得分:0)
你应该将static_cdn文件夹与media_cdn文件夹并行放置。
然后清除缓存并加载管理页面。
答案 2 :(得分:0)
是的,我得到了问题的解决方案。虽然一切正常,但浏览器的控制台显示 -
Resource interpreted as Stylesheet but transferred with MIME type application/x-css: "http://localhost:8000/static/admin/css/base.css".
Resource interpreted as Stylesheet but transferred with MIME type application/x-css: "http://localhost:8000/static/admin/css/login.css".
python built in server not loading css讨论了这个问题。
我在CSS not loading wrong MIME type Django获得了解决方案。
答案 3 :(得分:0)
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, "static", "static")
STATICFILES_DIRS = (
os.path.join(BASE_DIR, "static", "static-only"),
我把我的静态文件放在上面并在我的Django基目录中创建它。
之后我跑了django manage.py collectstatic
。
然后运行django manage.py runserver
但它仍然无效。
直到我清除了我的BROWSER CACHE。