feat: PosModel 关联查询得到所属组织信息
This commit is contained in:
+31
-29
@@ -47,37 +47,39 @@ class PosModel(BasicModel, table=True):
|
|||||||
def parent_name(self, value: Optional[str]) -> None:
|
def parent_name(self, value: Optional[str]) -> None:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
# # /*---------------------------------------organization_code-------------------------------------------*/
|
# /*---------------------------------------organization_code-------------------------------------------*/
|
||||||
#
|
|
||||||
# organization_code: str = Field(
|
organization_code: str = Field(
|
||||||
# default=None,
|
default=None,
|
||||||
# description="所属组织编码",
|
description="所属组织编码",
|
||||||
# foreign_key="pl_org.code", # 添加外键约束
|
foreign_key="pl_org.code", # 添加外键约束
|
||||||
# nullable=True
|
nullable=True
|
||||||
# )
|
)
|
||||||
#
|
|
||||||
# organization: Optional["OrgModel"] = Relationship(
|
organization: Optional["OrgModel"] = Relationship(
|
||||||
# sa_relationship_kwargs={
|
sa_relationship_kwargs={
|
||||||
# "foreign_keys": "PosModel.organization_code",
|
"foreign_keys": "PosModel.organization_code",
|
||||||
# "remote_side": "OrgModel.code",
|
"remote_side": "OrgModel.code",
|
||||||
# "uselist": False
|
"uselist": False
|
||||||
# }
|
}
|
||||||
# )
|
)
|
||||||
#
|
|
||||||
# @computed_field
|
@computed_field
|
||||||
# @property
|
@property
|
||||||
# def organization_name(self) -> Optional[str]:
|
def organization_name(self) -> Optional[str]:
|
||||||
# try:
|
try:
|
||||||
# return self.organization.name if self.organization else None
|
return self.organization.name if self.organization else None
|
||||||
# except:
|
except:
|
||||||
# return None
|
return None
|
||||||
#
|
|
||||||
# @organization_name.setter
|
@organization_name.setter
|
||||||
# def organization_name(self, value: Optional[str]) -> None:
|
def organization_name(self, value: Optional[str]) -> None:
|
||||||
# pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
PosService = create_model_service(
|
PosService = create_model_service(
|
||||||
Cls=PosModel,
|
Cls=PosModel,
|
||||||
custom_query=lambda: select(PosModel).options(selectinload(PosModel.parent)),
|
custom_query=(lambda: select(PosModel)
|
||||||
|
.options(selectinload(PosModel.parent))
|
||||||
|
.options(selectinload(PosModel.organization))),
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user