这几天完成了一个小项目的一小部分,主要是1.构建虚拟环境,2.在sql中构建数据库,3.连接数据库。简单做个总结。

说明:主程序为app.py,虚拟环境用virtualenv进行构造(真的踩了好久的坑),之后就是构建数据库与连接数据库的过程。

1.mac用virtualenv构造环境,网上有很多文档了,我是根据这篇构建的:https://www.jianshu.com/p/d37662e6ef34

写的很详细了。这里说一下自己遇到的错误吧,没想到被这个错难了两天。

Flask SQLAlchemy 常用方法 flask sql server_flask

如图,在构建了虚拟环境之后,进入了python界面,import flask,但是无法import,显示没有这个模块,但在lssitepackages的时候,却显示有flask这个包,根本原因是因为输入python调的不是虚拟环境的python解释器,调的是mac系统原本的python,但是pip却调的是虚拟环境的pip所以虽然pip装上了,所以用python运行却一直no found。这个错误不大,迷惑行为在于每次输入python,显示的都是python的版本为3.7.2,所以尽管之前怀疑过错因在此,可是因为这个原因忽略掉了。

解决方法只要指定python运行的版本,把python app.py改成python3 app.py就可以了。(哭)

2.mac+mysql(命令行)配置数据库

首先在mysql官网下载电脑对应的数据库版本,之后就可以配置了。

(1)进入mysql:

Flask SQLAlchemy 常用方法 flask sql server_mysql数据库_02

(2)创建数据库,create databases;

  (3)  展示数据库,show databases;

Flask SQLAlchemy 常用方法 flask sql server_python_03

(4) app密码为1234,因此修改root代码,熟练数据库相关操作后可以新增用户让程序访问新用户可以管理的数据库。

Flask SQLAlchemy 常用方法 flask sql server_mysql数据库_04

(5)flush刷新权限。

Flask SQLAlchemy 常用方法 flask sql server_数据库_05

(6)查看是否已修改成功。

Flask SQLAlchemy 常用方法 flask sql server_数据库_06

到此为止可以退出数据库部分了,直接跑app.py得话会报错显示不支持caching_sha2_password,接下来进入关键的连接数据库,这其中有很多坑。

3.连接数据库

因为app.py中是别人连接了自己的数据库,所以在这里要修改app.py中的代码。

(1)未修改的代码:

Flask SQLAlchemy 常用方法 flask sql server_mac+virtualenv创建虚拟环境_07

(2)修改后的代码(把上面config部分服务器上的数据库配置改为本地环境上的数据库配置):、

Flask SQLAlchemy 常用方法 flask sql server_数据库_08

OK,到这里再把去app.py的开头部分取消注释 “import pymysql”,并在虚拟环境中pip install pymysql。

之后python3 app.py就可以跑通啦

Flask SQLAlchemy 常用方法 flask sql server_python_09

之后,在浏览器中搜索,就可以显示想做的app的界面啦~~