设置django网站,但我无法让它提供静态文件。 在设置文件
中import os
# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
SETTINGS_DIR = os.path.dirname(__file__)
PROJECT_PATH = os.path.join(SETTINGS_DIR, os.pardir)
PROJECT_PATH = os.path.abspath(PROJECT_PATH)
TEMPLATE_PATH = os.path.join(PROJECT_PATH, 'templates')
STATIC_ROOT = os.path.join(PROJECT_PATH, 'angular/js')
STATIC_URL = '/static/'
在模板中
<script src="/static/js/angular.min.js"></script>
我可以提供主目录angular
中的模板,里面是静态文件夹angular/static/js/angular.min.js
答案 0 :(得分:1)
在setting.py文件中添加以下代码
STATIC_ROOT = os.path.join(BASE_DIR,"deploy_to_server")
STATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(BASE_DIR, "static"),
)
并在您的模板中使用
<script src="/static/js/angular.min.js"></script>
在项目中创建静态文件夹
==> static ==> js ==> angular.min.js
==> manage.py
希望这对你有帮助
答案 1 :(得分:1)
不要STATIC_ROOT
特定于app
。它应该是整个项目范围。所以我的建议
STATIC_ROOT = os.path.join(PROJECT_PATH, 'static')
STATIC_URL = '/static/'
然后添加名为app
的{{1}}作为任何其他应用。
添加到angular
在其中创建文件夹INSTALLED_APPS
,如
static/angular/js
将angular/static/angular/js
复制到其中
angular.min.js
通过angular/static/angular/js/angular.min.js
因此,生产也不会有太大变化。