前言
这个问题是之前自己想使用Sqlalchemy进行数据库的更新的时候遇到的。由于session需要将类与数据库里的表进行映射,但是表比较复杂,于是在寻找有没有可以自动生成models文件的办法,于是就找到了下面的方法。
文章参考自:https://my.oschina.net/godofpath/blog/655176
自动生成Sqlalchemy的models文件
使用sqlacodegen来自动生成models文件。
sqlacodegen已经加入pypi,只需要使用pip install sqlacodegen就可以安装了
安装后即可运行命令生成models.py文件了
假设数据库连接字符串是: mysql://root:root@127.0.0.1 :3306/mydb
使用命令:
- sqlacodegen mysql://root:root@127.0.0.1 :3306/mydb > models.py
即可在当前目录生成models.py文件
查看了下生成的models.py文件,可以符合PEP8规范,可生成视图类,会根据有没有主键决定是不是meta table,可以生成外键,就目前的使用没有出现过问题。
Python3也是可以支持的。
- 微信公众号
- 关注微信公众号
- QQ群
- 我们的QQ群号
评论