제목 | layout설정 관련 질의 드립니다. | ||
---|---|---|---|
글쓴이 | 코초보 | 작성시각 | 2010/09/13 11:46:14 |
|
|||
안녕하세요 초보 질문 드립니다. 이번 작업중에 layout을 적용하려고 하기 경로에 layout 사용법을 따라 하는데 문제가 발생해서 고수님들께 질문 드립니다. http://www.codeigniter-kr.org/source/view/313/page/1/q/hook 상기 경로에 있는 곳과 똑같이 설정을 했는데 문제가 되는건 controller 에서 하기와 같이 설정을 하면 ============================ hooks/Yield.php에서 $CI->layout을 못 읽어 들입니다. 별 수를 다 써봤는데도 읽은 수가 없는데 왜이런 건지요???? 참고로 hmvc를 사용하고 있습니다. |
|||
다음글 | 세션 질문입니다.. (4) | ||
이전글 | 세션질문 좀 드립니다. (4) | ||
코초보
/
2010/09/13 11:55:54 /
추천
0
|
달뚱이
/
2010/09/13 12:44:10 /
추천
0
잘 모르지만 한가지 말씀드리자면..
혹시 matchbox 쓰시나요? 그렇다면 controller에서 $this->layout으로 쓰시면 안되고, $CI =& get_instance(); $CI->layout = 'some'; 이런식으로 하셔야 할겁니다. 저도 계속 안됐는데 이런식으로 하니까 되더라구요... |
코초보
/
2010/09/13 13:22:44 /
추천
0
layout에서 hmvc경로는 찾습니다. 그래서 layout은 설정 되나 무조건 default layout만 가져오는 현상이 나오는 거구요 |
달뚱이
/
2010/09/13 13:45:33 /
추천
0
저도 그 이유를 찾기 위해서 여기 저기 뒤져봤는데 실력이 딸려서 ㅜㅜ 알수가 없더라구요.. |
코초보
/
2010/09/13 13:50:39 /
추천
0
달뚱이님 때문에 어떤 것이 문제인지는 알게 되었네요...
정말 감사합니다. |
달뚱이
/
2010/09/13 13:56:16 /
추천
0
허거걱... 찾았습니다...
글 달고 저도 궁금해서 다시 파일 열어보다 찾았습니다... $output = $CI->output->get_output(); 이 부분을 if ($CI->yield === TRUE) 바로 위로 올려주면 됩니다.. $CI->output->get_output(); 이 부분이 컨트롤러에 의해서 생성된 페이지인데, 이부분을 불러온 후 다시 아래에서 정의를 해서 그런것 같습니다. 정확하지는 않구요.. 여튼 이렇게 하니까 말끔하게 되네요... |
코초보
/
2010/09/13 14:02:45 /
추천
0
흠.....전 그렇게 바꿔도 안되네요... $CI->yield = isset($CI->yield) ? $CI->yield : TRUE; |
코초보
/
2010/09/13 14:21:21 /
추천
0
흠.....테스트 해 본 결과 |
달뚱이
/
2010/09/13 14:21:53 /
추천
0
방금 해보니까 hmvc에서는 안되네요...
저는 matchbox를 사용하고 있는데, matchbox에서도 안됐었거든요.. 현재 matchbox에서는 잘 되고 있는데, hmvc로 해보니 안되네요...ㅜㅜ |
코초보
/
2010/09/13 14:24:32 /
추천
0
전체 controller에 &get_instance()를 사용하기에는 부담이 되어서...
그럼 전달 방법을 바꿔야 할 거 같은데 그냥 global 변수를 정해서 변수값을 전달하는 방법 밖에는 없는 건가요?? 계속 되는 초보 질문이네요....ㅠ.ㅠ |
달뚱이
/
2010/09/13 15:00:37 /
추천
0
다시 또 시도해봤는데요...
controller에서 CI::APP->yield = FALSE 해 보세요... 음 이것으로는 돼는데...왜 그런지는....ㅜㅜ |
코초보
/
2010/09/13 15:18:55 /
추천
0
달뚱이님 너무 감사합니다.
잘됩니다. |
$CI->layout을 못읽어 오니 무조건 default layout만 가져와서 문제가 되고 있습니다.