2013-09-24 2 views
1

에서 그룹에 의해 할당 된 상속 된 사용자 역할 찾기 현재 로그인 한 사용자가 역할이있는 경우 6.1.1 GA2에 대한 Liferay-Theme를 체크인하려고합니다. "나의 역할".Liferay 테마 6.1.1 GA2

역할은이 역할이 할당 된 그룹에 사용자를 추가하여 정의되고 사용자에게 할당됩니다.

제어판에서 사용자 역할을 확인하면 해당 사용자에 대해 사용자 목록에 그룹이 올바르게 표시됩니다. 사용자를 편집 할 때 역할 패널은 지정된 그룹을 "상속 된 역할"에 표시합니다. 테마 간단한

#set ($usrRoles = $user.getRoles()) 
#foreach($usrRole in $usrRoles) 
    <p>$usrRole.getName()</p> 
#end 

에서

은 그룹이 역할을 상속하지 않는에서 직접 할당 된 역할을 반환합니다.

다른 역할을 수행 할 수있는 방법이 있습니까? 아니면 Liferay에서 또 하나의 버그입니까?

답변

2

liferay usergroup을 사용하는 경우 UserGroupRoleLocalService를 통해 연관된 역할을 검색 할 수 있습니다.

당신 후에이 코드를 추가

#set($userGroupRoleLocalService= $serviceLocator.findService("com.liferay.portal.service.UserGroupRoleLocalService")) 

#set($ugUsrRoles = $userGroupRoleLocalService.getUserGroupRoles($user.getUserId())) 

#foreach($ugUsrRole in $ugUsrRoles) 
    <p>$ugUsrRole.getRole().getName()</p> 
#end 

이 속도에서 사용할 수있는 모든을 Liferay 객체의 흥미로운 목록은 다음과 같습니다 Access Objects from Velocity

+0

들으은! Velocity Objects 목록은 매우 유용합니다. 그러나이 객체의 메소드를 어디에서 찾을 수 있습니까? 나는 소스 문서에서만 추측합니까? – kidata

+1

예, 불행히도 유일한 문서는 소스 코드 또는 javadoc입니다. 나는 보통 속도 변수에 해당하는 자바 클래스를 가져 와서 IDE에서 메소드를 시도한다. – Sticcio