我的 django 项目想使用 bootstrap,下载后分别放在了项目根目录的 static 和 app 目录的 static,app 叫 recommend,放两个是因为我怕报错,随便加载哪一个我都能接受,但是他一个都找不到。css 和 js 文件夹里都是有东西的。
项目的结构如下
.
├── Intelgoriform
│ ├── configs.py
│ ├── __init__.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
├── manage.py
├── README.md
├── recommend
│ ├── admin.py
│ ├── apps.py
│ ├── initial.py
│ ├── __init__.py
│ ├── migrations
│ │ └── __init__.py
│ ├── models.py
│ ├── static
│ │ ├── css
│ │ └── js
│ ├── templates
│ │ └── index.html
│ ├── tests.py
│ ├── urls.py
│ └── views.py
└── static
├── css
└── js
index.html 就是 helloword,包含如下内容
{% load static %}
<link rel="stylesheet" href="{% static 'css/bootstrap.min.css' %}"/>
app/urls.py 里只有‘’的路由,没加入 static 的路由,因为我看官方文档并没有设置路由
当我在 settings 里加入如下信息时
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static/"),
os.path.join(BASE_DIR, "recommend", "static/"),
]
网页是能够访问的,但是 css 和 js 是加载不出来的,报错内容为
指向“ http://127.0.0.1:8000/static/js/bootstrap.min.js ”的 <script> 加载失败。
当我把 settings.py 的内容更改为
# STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static/"),
os.path.join(BASE_DIR, "recommend", "static/"),
]
STATIC_URL 被我注释掉了
这时候网页会报 500 错误,django 给我的反馈是
django.core.exceptions.ImproperlyConfigured: You're using the staticfiles app without having set the required STATIC_URL setting.
请问我到底是哪里做错了。如何才能正确加载啊,我弄了一天了快
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.