我正在尝试创建一个基于用户过滤树的HQL查询。
在树根上我有AllowUsers和AllowRoles,在每个节点上我都有DenyUsers和DenyNodes。我可以使用
过滤树根上的用户select e
from oStructureMenu e
join fetch e.Nodes n
where e.Id = :id
and :user in (select u from e.AllowUsers u)
但是当我添加
and :user in (select f.DenyUsers from n f)
创建的sql有语法错误
此外,我不知道如何将用户角色与允许或拒绝角色集合中的角色进行比较
任何帮助将不胜感激......
答案 0 :(得分:1)
不应该是
and :user in (select f from n.DenyUsers f)