Q&A

admin단 에서모듈 정보 가져오는법

2025.02.07 13:32
110
0
CMS/프레임워크 Rhymix 2.1
개발 언어 PHP 8.4

모듈이 너무 오래되어 8.4에 맞춰서 수정하려고합니다 그런데 예전엔 관리자 페이지에 들어가면 모듈 정보를 Context::get('module_srl'); 이나 mid 로 가져올 수 있었던것같던데 둘다 null 값으로 떠서 혹시 다른 방법으로 가져오는 방법이 있을까요?

 

DB에는 모듈 정보가 있는데 관리자페이지에서 모듈로 들어가면 모듈정보를 가져오지 못합니다ㅠ

 

public function init()
{
// module_srl이 있으면 미리 체크하여 존재하는 모듈이면 module_info 세팅
  $module_srl = Context::get('module_srl');
  if(!$module_srl && $this->module_srl) {
  $module_srl = $this->module_srl;
  Context::set('module_srl', $module_srl);
  }

  // module model 객체 생성 
  $oModuleModel = &getModel('module');

  // module_srl이 넘어오면 해당 모듈의 정보를 미리 구해 놓음
  // 브라우져 타이틀, 관리자, 레이아웃 등 xe_modules table의 값과 정보
  if($module_srl) {
  $module_info = $oModuleModel->getModuleInfoByModuleSrl($module_srl);
  $this->module_info = $module_info;
  Context::set('module_info',$module_info);
  }
}

 

캡쳐.jpg

 

 

네비 Lv. 3

댓글 2

  • 2025.02.07 14:23 #1858054
    관리자단에는 기본적으로 module_srl이 없습니다.
    modules 테이블을 보면 아시겠지만, admin 모듈에 할당된 module_srl이 없기 때문입니다.

    물론 게시판 모듈의 설정 화면처럼 주소에 ?module_srl=123 이렇게 붙여 주면
    Context::get('module_srl')을 사용할 수 있습니다.
    원래 없는 값이기 때문에, 임의로 붙인다고 충돌나지는 않아요.
  • 2025.02.07 15:13 #1858061
    아하! 제가 잘못이해를 하고 있었네요 다시 XE스쿨 모듈개발 강의를 정독해야겠습니다 감사합니다!