侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

Django 静态文件配置

2023-09-27 星期三 / 0 评论 / 0 点赞 / 57 阅读 / 2794 字

static Django中,静态资源的存放通过设置STATIC_URL, STATICFILES_DIRS来设置 一般STATIC_URL设置为:STATIC_URL=’/static/’,这个

.

static

Django中,静态资源的存放通过设置STATIC_URL, STATICFILES_DIRS来设置

一般STATIC_URL设置为:STATIC_URL=’/static/’,这个static是在Django具体APP下建立的static目录,用来存放静态资源。
而STATICFILES_DIRS一般用来设置通用的静态资源,对应的目录不放在APP下,而是放在Project下

具体在模板文件中访问的时候,都是统一用:/static/资源名的方式,就可以访问到资源,不论具体的目录是APP下的static,还是project下的common_static, 都可以用/static/资源名的方式访问到。

为增强可移植性,在模板中可以用:STATIC_URL来代替具体的/static/来设置资源路径,但是需要在settings.py设置:

设置settings.py

在INSTALLED_APPS中要有’django.contrib.staticfiles’

INSTALLED_APPS = [    'django.contrib.admin',    'django.contrib.auth',    'django.contrib.contenttypes',    'django.contrib.sessions',    'django.contrib.messages',    'django.contrib.staticfiles',]

TEMPLATES 中,context_processors中,加入django.template.context_processors.static

TEMPLATES = [    {        'BACKEND': 'django.template.backends.django.DjangoTemplates',        'DIRS': [            os.path.join(BASE_DIR, "templates/"),        ],        'APP_DIRS': True,        'OPTIONS': {            'context_processors': [                'django.template.context_processors.debug',                'django.template.context_processors.request',                'django.contrib.auth.context_processors.auth',                'django.contrib.messages.context_processors.messages',                'django.template.context_processors.static'            ],        },    },]

新增STATICFILES_DIRS

STATIC_URL = '/static/'STATICFILES_DIRS = [    os.path.join(BASE_DIR,"static/"),]

模板中调用

<img src="{{STATIC_URL}}pic.jpg " />

media

设置settings.py

媒体文件的绝对路径:

MEDIA_ROOT = os.path.join(BASE_DIR, "file/")

媒体文件的相对路径:

MEDIA_URL = '/file/' 

设置静态文件路径

STATIC_PATH = os.path.join(BASE_DIR, "file/")

urls.py 影射路径

urlpatterns = [    url(r'^admin/', admin.site.urls),    url(r'^static/(?P<path>.*)$', 'django.views.static.serve', {'document_root':settings.STATICFILES_DIRS, 'show_indexes':False}),    url(r'^file/(?P<path>.*)$', 'django.views.static.serve', {'document_root':settings.MEDIA_ROOT, 'show_indexes':False}),]
.

广告 广告

评论区