Django 自学笔记兼学习教程第1章第2节——二 常用配置

点击查看教程总目录

新手建议简单浏览本文,不理解的建议跳过,不要强行理解。

Django的设置涉及多个模块,需要了解Django的一些相关知识,才好理解每个设置是干什么用的,

建议在后面的章节中学过了相关的知识和概念,再回过头来看对应的设置。

1-初识settings.py:

项目的配置文件,可用于配置该项目的所有配置。

对于一个项目而言,很多配置新手是用不到的,也有很多配置不推荐更改。

这里主要给大家介绍一些常用的配置,同时也会简单介绍下settings.py的内容。

settings.py的开头,有这样一段注释:

"""

Django settings for demo2 project.

Generated by 'django-admin startproject' using Django 2.2.11.

For more information on this file, see

https://docs.djangoproject.com/en/2.2/topics/settings/

For the full list of settings and their values, see

https://docs.djangoproject.com/en/2.2/ref/settings/

"""

里面给出了Django官方关于settings.py的说明文档的链接,

其中第一个链接主要是介绍settings.py的;第二个链接则是介绍所有的配置及配置值的。

可以粗略理解为第一个链接较简洁,第二个很详尽。

实际上,对于一些配置, settings.py里面也有给出对应的文档链接(如下图)。



对于英文好的以及有一定编程基础的,可以直接去对应的官方文档去查看对应用法

2-新手常用

下方的默认值是指通过django-admin startproject project_name命令新建出的项目对应的值

INSTALLED_APPS:

指定在项目中启用的app的列表

默认值:

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

一般我们使用py manage.py startapp app_name新建了app的话

都需要在这里添加(在列表里面加上'app_name',如下)

[
...,
'app_name',
]

不添加有时会报错,具体情况待补充(TODO)

详细文档: https://docs.djangoproject.com/en/2.2/ref/applications/

TEMPLATES:

项目使用的所有模板引擎的设置的列表。

列表中的每一项都是一个字典,其中包含单个引擎的配置。

默认值:

[
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
'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',
],
},
},
]

一般新建项目不会自动生成模板文件夹,所以一般会手动在项目文件夹下新建templates文件夹用于存放模板

新建templates文件夹后,在上面的第一个字典(引擎)的DIRS键对应的列表中添加os.path.join(BASE_DIR, 'templates')

'DIRS': [],

改为

'DIRS': [os.path.join(BASE_DIR, 'templates')]

DATABASES:

项目使用的所有数据库设置的字典。

它是一个嵌套字典,将数据库别名映射到包含单个数据库选项的字典。

必须配置默认(default)数据库;还可以指定任意数量的其他数据库。

(默认使用SQLite做数据库配置)

默认值:

{
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}

3-STATIC相关

TODO

最新文章

  1. nginx 反向代理
  2. zigbee学习之路(十四):基于协议栈的无线数据传输
  3. 手动刷新magento的索引管理方法
  4. 为什么获取的System.Web.HttpContext.Current值为null,HttpContext对象为null时如何获取程序(站点)的根目录
  5. 【Alpha阶段】第七次Scrum例会
  6. linux下 C++ 读取mat文件 MATLAB extern cyphon scipy 未完待续
  7. yii框架中保存第三方登录信息
  8. PC上安装多个操作系统
  9. 深入浅出ExtJS 第三章 表格控件
  10. 修炼dp( 2 )
  11. TensorLayer官方中文文档1.7.4:API – 可视化
  12. perl 之 正则表达式 (简)
  13. poj-1236(强连通分量)
  14. 了解fastadmin标准的控制器模块js的表格事件
  15. angularjs 绑定多个属性到下拉框
  16. 合理设置apache httpd的最大连接数
  17. 40个新鲜的 jQuery 插件,使您的网站用户友好
  18. redhat7.2 安装docker
  19. eclipse使用maven打包时去掉测试类
  20. 20144306《网络对抗》Web安全基础实践

热门文章

  1. Redis事件机制
  2. Netty常用招式——ChannelHandler与编解码
  3. pdb的插拔测试
  4. redux搭配react-redux进行跨组件通信开发
  5. mysql 建表后 重新构建 自增字段 (保留 原有字段结构)
  6. null与undefined到底有啥区别?
  7. 时序数据库InfluxDB的基本语法
  8. 题解 2020.10.24 考试 T2 选数
  9. Salesforce 生命周期管理(一)应用生命周期浅谈
  10. python爬虫时,解决编码方式问题的万能钥匙(uicode,utf8,gbk......)