XETOWN

호수 공원

XE 사용에 대한 여러가지 정보들을 공유할 수 있습니다.
아이디어 제안/공유
2016.08.14 23:39

내부 모듈 모델 정의

nck
조회 수 63 추천 수 0 댓글 2
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

안녕하세요!

 

다름이 아니라 자신의 모듈의 뷰나 컨트롤러 부분에 모델을 불러 올 때 getModel 함수를 부르는데 매번 부르기가 불편하더군요.

그래서 이 부분을 멤버 변수로 처리하면 어떨까해서 끄적여봅니다...

 

예)

모듈명 : editor

 

변경 전..

function ...()
{
   $oEditorModel = getModel("editor");
   ...
}
function ...()
{
   $oEditorModel = getModel("editor");
   $oEditorModel->...();
   ...
}

 

 

변경 후..

function init() //__construct()
{
   $this->oModel = getModel($this->module);
   ...
}
function ...()
{
   $this->oModel->...();
}

 

 

단지 코드 방식의 차이지만 가독성과 편리성이 좋더군요.

  • profile
    기진곰 2016.08.15 00:00:00

    같은 모듈 내의 클래스라면 저렇게 불러오는 것도 괜찮죠. 단, 꼭 필요하지 않을 때도 항상 불러오도록 한다면 처리 속도가 느려질 수 있습니다. 파일 하나에 수천 줄의 소스가 들어 있는 모듈도 많거든요. 이럴 때는 __get() 매직 메소드를 활용하거나, oModel을 속성이 아닌 메소드로 만드는 것도 한 가지 방법입니다.

     

    저는 그냥 getModel('module')->getModuleSrlByMid($mid); 이렇게 많이 씁니다. 한 번 쓰고 말 객체라면 별도의 변수에 할당할 필요도 없고, 여러 번 쓰더라도 어차피 코어에서 캐싱해 주니까요.

  • profile
    nck 2016.08.15 00:10:04
    아 getModel('module')->getModuleSrlByMid($mid); 이렇게 쓰는 방법도 있었군요
    하지만 $mid 값에 mid 값이 일치하지 않으면(action forward) 위험하지 않을까 싶군요..

    처리 속도도 고려를 해보긴 했는데 개인적으로 저는 속도보다는 코딩 방식을 동일하게 해서 가독성 및 관리가 편한쪽이 좋더라구요ㅎㅎ..

List of Articles
번호 분류 제목 글쓴이 날짜
공지 질문/답변 답변을 확실히 받기위한 질문자 지침서 20 람보 2015.12.31
3719 질문/답변 집에서 안쓰는 컴퓨터 찾았습니다. 9 file DIZAK 2016.11.28
3718 질문/답변 정말 이상한 문제네요. 3 라그릿 2016.11.28
3717 질문/답변 게시판 글 작성시 확장변수 글자수 제한이 가능할까요? 2 holyachon 2016.11.28
3716 질문/답변 소셜XE로 로그인시 가져오는 연령대로 회원가입 제한 가능할까요? 4 keh**** 2016.11.28
3715 질문/답변 위젯코드가 이상하게 생성됩니다. 4 라그릿 2016.11.28
3714 질문/답변 XE가 크롬에서만 작동하지 않습니다. 2 Katze 2016.11.28
3713 질문/답변 구글 애널리틱스 문의드립니다. 5 이로운 2016.11.28
3712 질문/답변 XE files의 cache폴더만 다른 드라이브로 지정할 수 있나요? 4 김병화 2016.11.27
3711 질문/답변 youtube link lite는 어디서 구할수 있는가요? 3 보고하비 2016.11.27
3710 질문/답변 휴면계정 정리 모듈 일괄 삭제하는 방법 질문 file 가브리엘조 2016.11.27
3709 질문/답변 min폴더 변경후에 데이터가 엉망입니다. 3 file 김병화 2016.11.27
3708 질문/답변 NAS관련 질문 18 DIZAK 2016.11.27
3707 질문/답변 고급메일발송모듈에서 우리메일  API  설정시 아래와 같은 에러가 발생하는데 6 pjk 2016.11.27
3706 질문/답변 라이믹스에서 회원정보 숨기기 문의 2 고라자 2016.11.26
3705 질문/답변 사이트맵 수정을 할 수가 없습니다. 5 file 마끼아토 2016.11.26
3704 질문/답변 기진곰님! 질문드립니다 2 고라자 2016.11.26
3703 질문/답변 XE ckeditor에서 p태그만 있을 경우 이온디 2016.11.26
3702 질문/답변 라이믹스 슈퍼캐시 sqlite 설정후 오류 11 file 보고하비 2016.11.26
3701 질문/답변 라이믹스에서 닉네임들을 하나로 설정하고 싶습니다 5 고라자 2016.11.26
3700 질문/답변 deflate랑 로딩속도랑은 별 상관 없나요? 7 기븐 2016.11.26
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 188 Next
/ 188
위로
서버에 요청 중입니다. 잠시만 기다려 주십시오...