import os
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
其次,还需指定STATIC_URL变量,因为它默认为空。以下内容即可。这将用于设置urlpattern。
代码示例:STATIC_URL = '/static/'
您需要有一个URL模式,以便您的服务器知道哪个URL对应于静态文件。
from django.conf.urls.static import static
urlpatterns = [
# ... the rest of your URLconf goes here ...
] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
在设置(settings)中指定STATICFILES_DIRS变量。这样,collect static管理器就知道在哪里查找静态文件并将其放置在STATIC_ROOT目录中。可以是不同目录的项目数组或元组。如果没有其他目录,则可以为空。
STATICFILES_DIRS = (os.path.join(BASE_DIR, 'pathtohomejsdirectory/'),)
最后,请确保运行 python manage.py collectstatic
。这将所有在 STATICFILES_DIRS 中指定的文件复制到 /static/ (STATIC_ROOT) 目录中,以便由 Django 提供服务。
在 生产环境中,您希望您的 Web 服务器/反向代理(如 Nginx 或 Apache)提供静态文件服务。请参阅 Django 文档此处