我想在 PonyORM 中运行以下查询。
SELECT af.AppFormID, af.AppFormTitle, ra.CreateGrant, ra.ReadGrant, ra.UpdateGrant, ra.DeleteGrant, ra.PrintGrant
FROM public.appforms as af left join public.roleaccesses as ra
on af.appformid = ra.appformid and ra.roleid = 2
如果您看到代码的最后一部分,我在“ON”原因中添加了一个条件。
我尝试在python中编写以下代码。
query= orm.left_join((af.AppFormID, af.AppFormTitle, ra.CreateGrant, ra.ReadGrant, ra.UpdateGrant, ra.DeleteGrant, ra.PrintGrant) for af in AppForms for ra in af.RoleAccess if ra.RoleID.RoleID == id)
但是,“if”被称为“WHERE”原因。我怎么解决这个问题?
感谢您的帮助。