2012-07-17 2 views
1

내 컨트롤러에서 모델을 호출하려고하는데, 뷰에서 데이터를 생성하고 내용으로 저장 한 다음 컨트롤러에 반환하여 모델을 추가합니다 나는 가지고있는 템플릿에.템플릿에서 사용할 변수로보기를 저장할 수 없습니다.

컨트롤러 :

function index($page = '1-Welcome to') 
{ 
     if (!$this->tank_auth->is_logged_in()) { 
      //display non-login page 
      redirect('/auth/login/'); 
     } else { 
    //user information 
     $user['user_id'] = $this->tank_auth->get_user_id(); 
     $user['username'] = $this->tank_auth->get_username(); 
    //general page data 
     $main['title'] = $this->page_model->make_title(ucfirst($page)); 
    //template data 
     $template['head'] = $this->load->view('templates/head', $main, TRUE); 
    //get left content 
     $c_data['make_profile'] = $this->left_model->make_profile($user); 

    //combine into one variable 
     $data['template'] = $template; 
     $data['page'] = $page; 
     $data['user'] = $user; 
     $data['left'] = $c_data; 
     print_r($data); 
     $this->load->view('main_template', $data); 
     } 
} 

초점 여기

$c_data['make_profile'] = $this->left_model->make_profile($user);에 무슨 일이 일어나고

$content = $this->load->view('left/profile', $c_data); 여기

변수 $content에 저장하는 대신 데이터를 인쇄되는 것은 내 코드입니다 은 make_profile

입니다. 왜 작동하지

<div id="profile"> 
    <div id='avatar'><img src="<?php echo $avatar_loc['location'] ?>" alt="avatar_user"/></div> 
    <div id="profile_pop"></div> 
</div> 

어떤 생각 :

public function make_profile($user) 
{ 
    $user_id = $user['user_id']; 
    $query = $this->db->query(" SELECT location FROM user_profiles AS up 
           INNER JOIN avatars AS a 
           ON up.avatar_id = a.id 
           WHERE user_id='$user_id'"); 
    $c_data['avatar_loc'] = $query->row_array(); 
    $content = $this->load->view('left/profile', $c_data); 
    $content .= "hello"; 
    return $content; 
} 

그리고 여기에 내 프로필보기입니까? 감사합니다

답변

5

반환 문자열로보기에서 데이터 :

$this->load->view('left/profile', $c_data, TRUE); 

here (페이지 하단)를 참조하십시오.

+0

Duh! 고마워, 그걸 잊어 버렸어. –

관련 문제