|
@@ -139,6 +139,7 @@ class CRUD:
|
|
|
self,
|
|
self,
|
|
|
session: Session,
|
|
session: Session,
|
|
|
conditions: Optional[Dict] = None,
|
|
conditions: Optional[Dict] = None,
|
|
|
|
|
+ is_soft_delete: bool = True,
|
|
|
):
|
|
):
|
|
|
query = select(self.model)
|
|
query = select(self.model)
|
|
|
if conditions is None:
|
|
if conditions is None:
|
|
@@ -159,7 +160,7 @@ class CRUD:
|
|
|
|
|
|
|
|
# 检查模型是否包含 delete_time 字段
|
|
# 检查模型是否包含 delete_time 字段
|
|
|
model_columns = {column.name for column in inspect(self.model).columns}
|
|
model_columns = {column.name for column in inspect(self.model).columns}
|
|
|
- if 'delete_time' in model_columns:
|
|
|
|
|
|
|
+ if 'delete_time' in model_columns and is_soft_delete ==True:
|
|
|
# 软删除:更新 delete_time 字段
|
|
# 软删除:更新 delete_time 字段
|
|
|
for obj in objects_to_delete:
|
|
for obj in objects_to_delete:
|
|
|
setattr(obj, 'delete_time', datetime.now())
|
|
setattr(obj, 'delete_time', datetime.now())
|