Django中模版文件和静态文件存放的位置问题

2017-01-09 14:11:07来源:oschina作者:Harmel人点击

模版文件


默认情况下会加载每个APP下的templates文件夹的内容,如果想放在APP外面可以如下配置


# 修改settings.py
# Django 1.10
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',
'Blog.views.get_config'
],
},
},
]

静态文件


默认情况下会加载每个APP下的static文件夹的内容,如果想放在APP外面可以如下配置


# 修改settings.py
# Django 1.10
STATICFILES_DIRS = (
os.path.join(BASE_DIR, 'static'),
)

在模型中引入静态文件


方式一:采用模版语法


{% load static %}

方式二:绝对路径写法


由于settings.py中有如下配置


STATIC_URL = '/static/'

所以在模版中需要采用如下方式引入静态资源



两种方式的差异:方式二的写法受配置项的影响,如果修改了配置项则多个页面需要更改地址;而方式一生成的URL会根据配置项自动生成前缀,后期如果上线想将URL路径换成common则不需要修改HTML文件。

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台