[英]Serve static files with django
设置一个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
的主目录中,而在模板的内部则是static文件夹angular/static/js/angular.min.js
在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
希望这对你有帮助
不要使STATIC_ROOT
特定于某个app
。 它应该是整个项目的范围。所以我的建议
STATIC_ROOT = os.path.join(PROJECT_PATH, 'static')
STATIC_URL = '/static/'
然后,将名为angular
的app
添加为其他任何应用程序。
添加到INSTALLED_APPS
在其中创建static/angular/js
文件夹
angular/static/angular/js
将里面的angular.min.js
复制为
angular/static/angular/js/angular.min.js
通过src=/static/angular/js/angular.min.js
因此,生产也不会有太大变化。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.