1

일부 맞춤 검색어를 만들고 회원 그룹과 문서 그룹 간의 관계를 알아야합니다. . 내가 세션과 내가 알아 낸 그래서 관계에서 자신의 사용자 ID를 얻을 수 있어요에서 사용자 로그 지금까지 때ModX Revo 데이터베이스 : 회원 그룹과 문서 그룹 간의 관계

내 궁극적 인 목표는 특정 사용자 그룹에 속하는 자원을 표시하는 것입니다 :

사용자 ID -> 회원 그룹 표 ->??Unknown table that pairs Member Groups with Document Groups?? -> 문서 그룹 표 -> 자료 표

나는 그 표를 찾지 못했습니다!

아무도 나를 도와 줄 수 있다면 정말 좋을 것입니다!

감사

(PS : 레보 사용)

편집 : assitance

enter image description here

+0

가 당신을 도울 것입니다을 연결하는 access_resource_groups 테이블의 것으로 나타났습니다 파고 후 .modx.com/thread/31499/add-new-document-to-new-resource-group-via-api – Vasis

답변

0

당신은 내장 MODX 방법 것은 이것을 달성하기 위해 몇 가지를 사용할 수에 대한 추가 이미지.

이 테스트되지 않고 작동하지 않을 수 있습니다,하지만이 그것을 할 수있는 방법이 될 수 있습니다

// userGroups = membergroups 
$userGroups = $user->getUserGroups(); 

foreach ($userGroups as $userGroup) { 
    $resGroups = $userGroup->getResourceGroups(); 

    foreach ($resGroups as $resGroup) { 
     $resources = $resGroup->getResources(); 
     // merge resources into an array or something 

    } 
} 

체크 아웃 moduser.class.php, modusergroup.class.phpmodresourcegroup.class.php이 방법 뒤에있는 쿼리를 확인하십시오. 보다 효율적인 하나의 쿼리에이를 적용 할 수 있습니다.

또한 내가 달성하고자하는 것을 오해하지 않은 경우 사용자가 로그인 할 때 관리자의 리소스 트리에서 볼 수있는 것과 비슷한 결과를 보여야합니다.

이는 resource/getnodes.class.php 프로세서를 사용합니다.이 프로세서는 getCollection을 사용하여 각 컨텍스트에 대해 가능한 모든 리소스를 검색 한 다음 각각을 반복하고 을 사용하여 표시할지 여부를 결정합니다. 그것은 고려해야 할 또 다른 접근법 일 수 있습니다.

보통 MODX 리소스가 아닌 사용자 지정 데이터로 작업하므로 대면 방법에 대해 듣고 싶습니다.

+0

그 도움이 무엇입니까 ?? – okyanet

0

나는 이것이 정말로 정말로 오래되었다는 것을 알고 있지만,이 질문을 통해 나는 스스로 대답을 찾았다. // 포럼 : HTTP - 조금 더 나는 그것이 document_groupsmember_groups

  • document_groups.id는 = access_resource_groups.target
  • member_groups.id 어쩌면 = access_resource_groups.principal