Django - 配置文件

Django - 配置文件

1. BASE_DIR

__file__这个变量可以获取到当前文件(包含这个代码的文件)的路径。os.path.dirname(__file__) 得到文件所在目录,再来一个os.path.dirname()
就是目录的上一级,BASE_DIR 就是项目根目录

2. DEBUG

是否打开调试模式,DEBUG = True时,前端调用出错会在页面打印出错信息,为False时不会打印,当DEBUG = False 时,ALLOWED_HOSTS必须设置

3. ALLOWED_HOSTS

允许访问的域名集合,如:ALLOWED_HOSTS = ['*.demon.*', 'www.baidu.com'],可以填*表示所有人可以访问

4. STATIC

4.1 STATIC_URL

前端访问静态文件的路径,例如:http://localhost:8000/static/color.css
* 假如你的app下的static文件夹下有一个color.css,项目根目录下的static文件夹下也有一个color.css,Django查找这个文件的顺序是什么?
按照规则,它会先去app下的static文件夹下找,如果找到就直接返回,如果没找到,就会去 STATICFOLES_DIRS 里面指定的路径下顺序查找,为了避免
这种情况,有两个解决办法,一种是把app下的color.css前面加一个路径,比如:/myblog/blog/static/color.css 改为 /myblog/blog/static/blo
g/color.css,另外一种方法,就是修改每个静态文件的前缀名为app_,这是两种比较简单的方法。

  1. STATIC_URL = '/static/'

4.2 STATIC_ROOT

静态文件的根目录,我们一般会把静态文件放在项目根目录下的static文件夹下,或者app的static文件夹下,部署的时候,我们可以使用 
python manage.py collectstatic 将所有app 下以及 STATICFILES_DIRS下的静态文件全部复制到 STATIC_ROOT 下。

  1. STATIC_ROOT = '/home/demon/static'

4.3 STATICFILES_DIRS

指定其他(非 app 下的)静态文件的存放路径

  1. STATICFILES_DIRS = (
  2. os.path.join(BASE_DIR, "common_static"),
  3. '/myblog/static/ ',
  4. )

5. MEDIA


  1. # 用来存放用户上传的文件
  2. MEDIA_URL = '/media/'
  3. MEDIA_ROOT = os.path.join(BASE_DIR,'media')

6. TEMPLATE_DIRS

一般用户都会在 app下创建爱你一个 templates文件夹来存放模板文件,但有一些模板文件可能是多个app共用的,这时就用它来指定

  1. # 这时就可以访问 templates 和 templates2 下的模板文件
  2. TEMPLATES = [
  3. {
  4. 'BACKEND': 'django.template.backends.django.DjangoTemplates',
  5. 'DIRS': [
  6. os.path.join(BASE_DIR,'templates').replace('\\', '/'),
  7. os.path.join(BASE_DIR,'templates2').replace('\\', '/'),
  8. ],
  9. 'APP_DIRS': True,
  10. ]

7. STATICFILES_FINDERS

用来指定静态文件的搜索路径

  1. # 下面会先查找 STATICFILES_DIRS 下的静态文件,找不到就去 app 下查找
  2. STATICFILES_FINDERS (
  3. "django.contrib.staticfiles.finders.FileSystemFinder",
  4. "django.contrib.staticfiles.finders.AppDirectoriesFinder"
  5. )
上一篇:Log4j分级别记录日志文件


下一篇:Git 基本使用