开发环境下
开发环境下 即settings.py
中的配置项 DEBUG = True
的情况。
这种情况下,django会默认帮我们处理静态文件会帮我们处理一些事情。
我们只需要少数配置即可
固定配置项
settings.py
配置静态资源的起始URL
# url访问地址如:localhost://static/1.png
STATIC_URL = '/static/'
STATICFILES_DIRS = [
# 静态资源存储的目录,比如我的是根目录下的 public_static
os.path.join(BASE_DIR, 'public_static'),
]
生产环境下
DEBUG = False
的话还需要我们额外做一件事
固定配置项
settings.py
配置静态资源的起始URL
# url访问地址如:localhost://static/1.png
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, "public_static") # 静态资源绝对目录地址
配置路由映射
urls.py
from django.views import static
from django.conf import settings
from django.conf.urls import url
urlpatterns = [
path('admin/', admin.site.urls),
...
url(r'^static/(?P<path>.*)$', static.serve, {'document_root': settings.STATIC_ROOT}), # 重点是这一行
]
测试验证
浏览器访问即可:http://127.0.0.1:8000/static/xxx