CI 묻고 답하기

제목 SOS 입니다...ㅠㅠ 위젯에서 템플릿 파서 사용법 관련문의 입니다.
글쓴이 은랑 작성시각 2013/04/11 10:44:33
댓글 : 9 추천 : 0 스크랩 : 0 조회수 : 17665   RSS
 <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class Widget_sample extends Widget {
 
 public function __construct()
 {
  
  $this->CI = & get_instance();
  $this->CI->load->model('sample_model'); 
 // $this->CI->load->library('parser');  // autoload 에 정의되어 있어서 주석처리
 }// end function  
  
  
 public function run()
 {
  $SQL_Result = $this->CI->sample_model->select_sample();
  $objRow  = $SQL_Result->row();
   
 // var_dump($objRow);
  
  echo "<BR>".$objRow->t1."<BR>";
  echo "<BR>".$objRow->t2."<BR>";
  

//----------------------------------------------------------

  $data = array(
              'AAAA' => 'My Blog Title'
              , 'BBBB' => 'My Blog Heading'
              );

  $this->CI->parser->parse('Unable to load the requested file: /application/widgets/views/widget_sample.php', $data);

//@ 위젯(콘트롤러) 생성해서 모델까지는 잘 연동이 되었습니다.

//@ 템플릿 파서를 연동하려고 하니 잘 안됩니다.

//@ 위젯에서 파서를 사용했으면 하는데...잘 안되네요...

//@ 출력되는 에러는 경로가 잘못되었다 인데...

//@ 뭔가 설정상에 실수 한거같은데 간단한 샘플 같은거 없을까요...?
  
//----------------------------------------------------------  
  
  
  $this->render('widget_sample');
  
 }// end function  
  

}

?>
ㅠㅠ

SOS 입니다....

분명 경로가 틀려서 나오는 메시지 인데..

어떻게 잡아줘야 할지 기준을 모르겠네요 

고수님들의 답변을 부탁드리겠습니다.
-----------------------------------------------------------------------------
An Error Was Encountered

Unable to load the requested file: /application/widgets/views/widget_sample.php


 

 다음글 mail 에 관해서 질문 드립니다. 꾸벅~~~ (4)
 이전글 안녕하세요. daum 메일만 좀 이상하게 전송되는데요? (1)

댓글

변종원(웅파) / 2013/04/11 10:56:59 / 추천 0
템플릿파서 안에서 load->view(파일명)를 사용합니다.

application/views 이외의 디렉토리는 인식을 못하겠죠.


application/views/widget/a.php 형태로 사용하시면 될것 같은데요?
은랑 / 2013/04/11 11:07:47 / 추천 0
 웅파//

위젯 관련 내용 디렉토리를 옮겨서 처리해 보겠습니다. 

답변 갑사합니다.
은랑 / 2013/04/11 13:21:34 / 추천 0
웅파 //

말씀하신대로 해서 반영은 되는데...

원하는 위치에 출력이 안되네요..ㅠㅠ

우째야 하려나...에고고..
은랑 / 2013/04/11 13:25:01 / 추천 0
 전체 페이지 구조를 정의해 놓고 지정한 위치로 불러들이는 구조는 어려운건가...에고공...

smarty 에서는 잘 사용했는데..

뭔가 방법이 있는데 못찾는것 같아...답답 + 열....= 급 피곤...ㅠㅠ

변종원(웅파) / 2013/04/11 13:44:54 / 추천 0

컨트롤러안에서 echo로 출력한 것과 load->view()로 출력한 것의 순서가 다릅니다.

파서도 view()를 이용하기 때문에 그런 것 같네요.

http://cikorea.net/qna/view/9281/page/2/ 참고해보세요

은랑 / 2013/04/11 15:50:01 / 추천 0
 웅파 //

관심가져 주셔서 감사합니다.

드디어 해결 봤습니다.

바람직한 방법인지는 모르겠으나...

일단 해결 봤습니다.

http://ci.01058778272.com/

요기에 출력 중이구요

파서를 이용해서 위젯 처리된 결과로 리턴된 HTML 을 다시 파싱 처리해 버렸습니다.

따라서

위에서 부터 HTML 조립이 아닌

미리 전체 레이아웃을 짜놓고 지정된 위치에 위젯 처리 결과를 넣을 수 있게 되었습니다.

위젯에서도 파서를 사용하기에

view 파일에는 일체 PHP 코드 없이 처리도 가능할것 같습니다.

감사합니다.

꾸숑 / 2013/04/11 21:48:08 / 추천 0
은랑// 대단합니다. 저에게 기회되면 전수부탁해요^^
한대승(불의회상) / 2013/04/12 07:30:07 / 추천 0
은랑// 오.. 발상의 전환이군요. 멋진데요.
은랑 / 2013/04/12 10:26:23 / 추천 0
불의회상 // 

에거거 실력이 모자라다 보니...

잔머리질..이저머...어여 내공 전수 해주세요...^^~