这可能吗?如果没有,那么我如何在我的gsp中过滤此代码的特定角色?
<div class="fieldcontain ${hasErrors(bean: tableInstance, field: 'user', 'error')} ">
<label for="user">
<g:message code="table.user.label" default="User" />
</label>
<g:select id="user" name="user.id" from="${rms.User.list()}" optionKey="id" value="${tableInstance?.user?.id}" class="many-to-one" noSelection="['null': '']"/>
上面的代码段用于基本的创建和编辑功能
答案 0 :(得分:2)
使用spring-security插件提供的sec:access
标记。
<sec:access expression="hasRole('ROLE')">
<div class="fieldcontain ${hasErrors(bean: tableInstance, field: 'user', 'error')} ">
<label for="user">
<g:message code="table.user.label" default="User" />
</label>
<g:select id="user" name="user.id" from="${rms.User.list()}" optionKey="id" value="${tableInstance?.user?.id}" class="many-to-one" noSelection="['null': '']"/>
</sec:access>
或者您可以使用sec:ifAnyGranted
代码
<sec:ifAnyGranted roles="ROLE1, ROLE2, ...">
....
</sec:ifAnyGranted>
修改强>
def users = UserRole.findAllByRole(Role.get('ROLE'))*.user.unique()