rgfewfger
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
from peewee import *
|
||||
|
||||
# 连接到 SQLite 数据库,如果文件不存在会自动创建
|
||||
db = SqliteDatabase(r'E:\新建文件夹\lm_job\models\database.db')
|
||||
# from peewee import *
|
||||
#
|
||||
# # 连接到 SQLite 数据库,如果文件不存在会自动创建
|
||||
# db = SqliteDatabase(r'E:\新建文件夹\lm_job\models\database.db')
|
||||
|
||||
import pymysql
|
||||
|
||||
@@ -29,29 +29,29 @@ db1 = MySQLDatabase(
|
||||
)
|
||||
|
||||
|
||||
class BaseModel(Model):
|
||||
class Meta:
|
||||
database = db1
|
||||
|
||||
def save(self, *args, **kwargs):
|
||||
"""在调用 save 时自动连接和关闭(若无事务)"""
|
||||
db.connect(reuse_if_open=True)
|
||||
try:
|
||||
result = super().save(*args, **kwargs)
|
||||
finally:
|
||||
# 若当前没有事务且连接仍然打开,则关闭连接
|
||||
if not db.in_transaction() and not db.is_closed():
|
||||
db.close()
|
||||
return result
|
||||
|
||||
@classmethod
|
||||
def get_or_create(cls, defaults=None, **kwargs):
|
||||
"""在调用 get_or_create 时自动连接和关闭(若无事务)"""
|
||||
db.connect(reuse_if_open=True)
|
||||
try:
|
||||
obj, created = super().get_or_create(defaults=defaults, **kwargs)
|
||||
finally:
|
||||
# 若当前没有事务且连接仍然打开,则关闭连接
|
||||
if not db.in_transaction() and not db.is_closed():
|
||||
db.close()
|
||||
return obj, created
|
||||
# class BaseModel(Model):
|
||||
# class Meta:
|
||||
# database = db1
|
||||
#
|
||||
# def save(self, *args, **kwargs):
|
||||
# """在调用 save 时自动连接和关闭(若无事务)"""
|
||||
# db.connect(reuse_if_open=True)
|
||||
# try:
|
||||
# result = super().save(*args, **kwargs)
|
||||
# finally:
|
||||
# # 若当前没有事务且连接仍然打开,则关闭连接
|
||||
# if not db.in_transaction() and not db.is_closed():
|
||||
# db.close()
|
||||
# return result
|
||||
#
|
||||
# @classmethod
|
||||
# def get_or_create(cls, defaults=None, **kwargs):
|
||||
# """在调用 get_or_create 时自动连接和关闭(若无事务)"""
|
||||
# db.connect(reuse_if_open=True)
|
||||
# try:
|
||||
# obj, created = super().get_or_create(defaults=defaults, **kwargs)
|
||||
# finally:
|
||||
# # 若当前没有事务且连接仍然打开,则关闭连接
|
||||
# if not db.in_transaction() and not db.is_closed():
|
||||
# db.close()
|
||||
# return obj, created
|
||||
|
||||
Reference in New Issue
Block a user