Optimize the dynamic import of data models (#546)

This commit is contained in:
Wu Clan
2025-03-16 15:13:09 +08:00
committed by GitHub
parent 951fdc902a
commit a4a394a18d
4 changed files with 13 additions and 22 deletions
+1 -4
View File
@@ -60,10 +60,7 @@ def filter_data_permission(request: Request) -> ColumnElement[bool]:
rule_model = rule.model
if rule_model not in settings.DATA_PERMISSION_MODELS:
raise errors.NotFoundError(msg='数据规则模型不存在')
try:
model_ins = dynamic_import_data_model(settings.DATA_PERMISSION_MODELS[rule_model])
except (ImportError, AttributeError):
raise errors.ServerError(msg=f'数据模型 {rule_model} 动态导入失败,请联系系统超级管理员')
model_ins = dynamic_import_data_model(settings.DATA_PERMISSION_MODELS[rule_model])
model_columns = [
key for key in model_ins.__table__.columns.keys() if key not in settings.DATA_PERMISSION_COLUMN_EXCLUDE
]