学习Flask 之一 环境安装

来源:互联网 发布:ubuntu设置dhcp 编辑:程序博客网 时间:2024/06/10 02:13
  1. 环境变量导入的优化方法

使用环境变量导入邮箱的用户名和密码,显然从理论上讲是非常安全的,但是在我们的编码过程中,每次测试都要重复导入,因为终端一旦关闭,那么导入的环境变量就会失效,对于我们来说是十分不方便的,所以小编根据自己的经验,给大家提供一种较为方便的方法。

在hello1.py的同级目录下,新建一个py文件,命名为info.py:
在info.py中写入自己的邮箱用户名和密码:

USERNAME = 'xxxxxxxx@qq.com'PASSWORD = 'yyyyyy'

在hello1.py中的代码如何:

import os# ...from info import USERNAME, PASSWORD #从info.py中导入邮箱账户和密码app.config['MAIL_SERVER'] = 'smtp.qq.com'app.config['MAIL_PORT'] = 25app.config['MAIL_USE_TLS'] = Trueapp.config['MAIL_USERNAME'] = USERNAME  #将邮箱账户赋值app.config['MAIL_PASSWORD'] = PASSWORD  #将邮箱密码进行赋值app.config['FLASKY_MAIL_SUBJECT_PREFIX'] = '[Flasky]'app.config['FLASKY_MAIL_SENDER'] = 'Flasky Admin <xxxxxxx@qq.com>'app.config['FLASKY_ADMIN'] = USERNAME

由此就不用每次在终端里进行环境变量的导入了,但是很多朋友可能会想,我的代码是推送到线上的,那我push的时候不就直接推送到github上了,别人不就可以看见我的邮箱和密码了吗(确实有这个问题,小编的邮箱原来就差点泄露过),对于使用github的小伙伴来说,可以设置,对 Git的隐藏文件 .gitignore进行编辑:

(venv) $ vim .gitignore

进入.gitignore文件:

# Rope project settings.ropeprojectStatus API Training Shop Blog Aboutsecret.py   # 将你不想git追踪的文件添加到里面info.py

有关详细的git忽略特殊文件的做法,请移步廖雪峰的git教程(忽略特殊文件),关于有朋友使用pycharm集成IDE的,自己查阅相关文档进行设置,在这里不一一赘述了。

  1. 数据库
    在11章以后,由于添加文章和用户。如果直接生成模拟文章和用户名后,会产生一个问题,Role表中是空的,所以用户的角色数据会是空的,这样,会产生一个错误,外键关联失败,由于是外键,不能利用SqlLiteStudio手动数据修改数据。
    这样的话,程序页面中没有管理员功能键的显示。
    可以删除数据库,利用命令,
(venv)$python manage.py db upgrade

生成空的数据库,利用命令,

(venv)$Role.insert_roles()

然后再生成虚拟文章和用户数据。
注意,管理员只能自己手动添加数据。

1 0