将重要资讯放到yaml内
config.yaml(放在BASE_DIR)
---
email:
EMAIL_BACKEND: 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST_USER: '[email protected]'
EMAIL_HOST_PASSWORD: 'asdfasdfasdfffa'
SECRET_KEY: 'django-insecure-)33#f@1n86$lv19uz*u!9*rsb99p1&1ncnbsadfasdfo#qd@*u'
...
然後在setting内导入
如此一来可以保护机密资讯不会上传到git
还有可以快速切换develop & production 环境
docsystem_5/settings.py
BASE_DIR = Path(__file__).resolve().parent.parent
with open(BASE_DIR/"config.yaml","r") as f:
config = yaml.full_load(f)
dict_email_config = config.get('email','')
secret_key = config.get('SECRET_KEY','')
email_host_user = dict_email_config['EMAIL_HOST_USER']
email_host_password = dict_email_config['EMAIL_HOST_PASSWORD']
SECRET_KEY = secret_key
EMAIL_HOST_USER = email_host_user
EMAIL_HOST_PASSWORD = email_host_password
yaml的规则
--- # 表示yaml开始
# 字典 key:value
animal: pets
plant:
tree
# 数组
animal:
- Cat
- Dog
- Goldfish
# 纯量
str: This_is_a_line #纯文字可以不用引号
str: 'content: a string'
s1: 'content:\n a string' # 会转换成换行
s2: "content:\n a string" # 不会转换
str: 'labor''s day' # 两个单引号会转换成单引号
int_value: 314
float_value: 3.14
parent: ~ # 表示null
iso8601: 2018-12-14t21:59:43.10-05:00
date: 1976-07-31
# 换行符保留
this: |
Foo
Bar
that: >
Foo
Bar
{ this: 'Foo\nBar\n', that: 'Foo Bar\n' }
... # 表示yaml结束
<<: 自动化测试,让你上班拥有一杯咖啡的时间 | Day 18 - 如何提交表单
我们平常建立的路由都是MaterialPageRoute,但当我们需要改变风格或是转场效果时,就需要...
这一篇说实在的,现在的我还不能写出有用的插件,所以这一篇笔记主要也是学习使用别人写好的插件。 使用插...
文件处理函数 fopen(): 打开文件或者 URL fclose(): 关闭一个已打开的文件指针 ...
对于 Powershell 脚本的参数,我们可以通过一些属性来限制参数。 今天我们就来看看,怎么通过...
前言 各位早安,书接上回我们将程序码的规模扩大成多档案的规模,也发现了三个大问题,今天我们就要来解决...