ORM框架Peewee(一模型)根据表生成model,根据model生成表
ORM框架Peewee(二增)
ORM框架Peewee(三删)
ORM框架Peewee(四改)
ORM框架Peewee(五查)
ORM框架Peewee六(连接池、主从、重连、ssh连接)
ORM框架Peewee七《INSERT 和 UPDATE扩展》
ORM框架 Peewee 如何使用Mysql的JSON特性?
安装
pip install peewee
实例化数据库
-
方法
from peewee import * database = MySQLDatabase('database', host="", user="",passwd="" ) database.connect()
-
方法
database = MySQLDatabase(None) database.init( database='db_name', host='127.0.0.0', user='root', password='root' )
-
方法
from playhouse.db_url import connect mysql_url ='mysql://admin:123456!@126.0.0.1:3306/db_name?charset=utf8' blog = connect(mysql_url)
定义数据模型 (Model)
class BaseModel(Model):
class Meta.:
database = database
class User(BaseModel):
user_name = CharField(null=True)
wo_no = IntegerField(primary_key=True)
class Meta.:
db_table = 'sys_user' # 数据库的表名
class UserAuth(BaseModel):
user_name = CharField(null=True)
auth_type = CharField(null=False)
class Meta.:
db_table = 'user_auth' # 数据库的表名
根据模型生成表
-
方法
database.create_tables([User, UserAuth]) 有其他的model往列表加即可 database.close()
-
方法
myModels = [User, UserAuth] for myModel in myModels: myModel.create_table()
根据表自动生成模型
如果不需要自己去创建表,已有现成的表可用,可以使用下面的命令生成模型
python -m pwiz -e mysql -H 127.0.0.1 -p 3306 -u root -P dbname >model.py
python -m pwiz -e mysql -H {主机地址} -p 3306 -u root -- password {数据库名称} > {生成的代码文件 例model.py}
解释:
-e数据库类型 比如mysql
-H数据库ip
-p端口
-u数据库用户名
-P密码
dbname为db名
db.py自动生成的py文件名