Rhymix 2.0 트리거 목록 - Lifecycle
## Lifecycle
moduleHandler.init
-before
\ModuleHandler
constructor- 가장 먼저 호출되는 트리거
- 요청 데이터와 route 정보가 담긴 ModuleHandler 객체를 전달 받음
- 이 트리거 실행 후에
before_module_init
애드온이 실행 됨
moduleHandler.init
-after
\ModuleHandler->init()
- 실행될 모듈의 정보(
Context::get('current_module_info')
와 동일)를 전달 받음
moduleObject.proc
-before
\ModuleObject->proc()
- 실행될 모듈의 객체를 전달 받음
- 공통된 데이터와 모듈에 따라서 담고있는 데이터가 다르다
- 아직 모듈의 액션이 실행되지 않은 상태
- 실행 대상 모듈 객체에서 초기화한 데이터와 모듈의 module.xml 정의(
xml_info
), 요청한 회원 정보를 기반으로한 권한 정보(grant
)를 담고 있다 - 이 트리거 실행 후에
before_module_proc
애드온이 실행 됨
moduleObject.proc
-after
\ModuleObject->proc()
- 모듈의 액션이 실행된 후의 처리된 후의 상태
- 결과 값은 주로 이 객체의
variables
멤버 또는Context::set()
으로 Context에 담겨 있을 수 있다
- 결과 값은 주로 이 객체의
- 이 트리거 실행 후에
after_module_proc
애드온이 실행 됨
layout
-before
\DisplayHandler->printContent()
- 레이아웃이 그려지기 전
- 실행된 모듈 객체를 전달 받음
- 해당 모듈 인스턴스(mid)에 설정된 레이아웃이
layout_path
(또는 편집된 레이아웃은edited_layout_file
)에 담겨있다
display
-before
\DisplayHandler->printContent()
- 출력할 결과 값이 전달 됨
- 요청에 따라 HTML, JSON, XML 등의 포맷을 가지고 있으며
- HTML 응답의 경우 레이아웃이 입혀진 결과물이며
<body>
안의 콘텐츠이다
- 전달 받은 값을 수정하면 결과물을 변경할 수 있다
- 이 트리거 실행 후에
before_display_content
애드온이 실행 됨
display
-after
\DisplayHandler->printContent()
- 라이프사이클에서 가장 마지막에 호출되는 트리거
- 마찬가지로 요청에 따라 응답 유형에 맞는 포맷의 최종 결과물이 전달 됨
- HTML 응답의 경우 레이아웃을 포함하여
<html><head>
등을 포함하는 완전한 형태의 HTML이다
출처: https://velog.io/@rxpublic/Rhymix-라이믹스-트리거-목록
댓글 2
감사합니다~
일목요연하기까지 해서 감동적이네요ㅜㅜ
블로그도 왠지 종종 찾아볼 것 같은 예감이에요!
https://github.com/rhymix/rhymix-docs
매뉴얼로 고고싱~^^