本文介绍: 在开发环境中(DEBUG=True),django.contrib.staticfiles自动帮助寻找静态路径。在生产环境中(DEBUG=False),django.contrib.staticfiles失效了,需要我们自己设置静态路径这里STATIC_ROOT是放静态文件路径,我的路径是C:UsersAdministratorPycharmProjectsMyAppabc。注意url名字不要搞错了。

一、原因

开发环境中(DEBUG=True),django.contrib.staticfiles自动帮助寻找静态路径。在生产环境中(DEBUG=False),django.contrib.staticfiles失效了,需要我们自己设置静态路径

二、解决

1、打开settings.py,把STATIC_URL 和 STATICFILES_DIRS 注释掉,新增STATIC_ROOT

DEBUG = False

# 开发环境才起作用
# STATIC_URL = '/abc/'
# STATICFILES_DIRS = (
#     os.path.join(BASE_DIR,"abc"),     # 配置静态资源路径,后面逗号一定要加
# )

# 生产环境中才起作用
STATIC_ROOT = os.path.join(BASE_DIR,"abc")

这里STATIC_ROOT是放静态文件的路径,我的路径是C:UsersAdministratorPycharmProjectsMyAppabc

在这里插入图片描述

html引用如下

在这里插入图片描述
2、打开urls.py新增访问静态文件路由url

from django.urls import path
from App import views
from django.conf import settings
from django.conf.urls import url
from django.views.static import serve

urlpatterns = [
    # path('admin/', admin.site.urls),
    # 新增下面这行
    url(r"^abc/(?P<path&gt;.*)$", serve, {"document_root": settings.STATIC_ROOT}, name='abc'),
]

注意url名字不要搞错了
>
在这里插入图片描述

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注