peewee可以用Model直接在数据库中创建表
反过来也可以,用数据库中已经存在的表创建Model
前提:已经安装peewee模块pip install peewee
$ python -m pwiz -e mysql -H localhost -p 3306 -u root -P -t table_names database_name > model.py
参数解释:
选项 | 解释 | 举例 |
---|---|---|
-h | help 显示帮助 | -h |
-e | engine 数据库引擎 | -e mysql |
-H | host 数据库地址 | -H localhost |
-p | port 数据库端口 | -p 3306 |
-u | user 数据库用户名 | -u root |
-P | password 数据库密码 | -P |
-s | schema 模式 | -s public |
-t | tables 指定生成来自表格 | -t tweet,users,relationships |
-v | VIEWs 指定生成来自视图 | -v |
-i | info 添加原信息 | -i |
-o | order 保留表格列顺序 | -o |
engine
支持的数据库:
sqlite
mysql
postgresql
举例
命令行语句
$ python -m pwiz -e mysql -H localhost -p 3306 -u root -P -t names demo > names.py
生成的names.py
Model文件
from peewee import *
database = MySQLDatabase('demo', **{'charset': 'utf8', 'use_unicode': True, 'host': 'localhost', 'port': 3306, 'user': 'root', 'password': '123456'})
class BaseModel(Model):
class Meta:
database = database
class Names(BaseModel):
age = IntegerField(null=True)
name = CharField(null=True, unique=True)
class Meta:
table_name = 'names'