2015. 9. 7. 09:34ㆍProgramming/CodeIgniter
리스트를 누르고 해당 정보를 보는 페이지마다 다시 리스트를 넣으려고 한다.
controller/topic.php
function __construct() { parent::__construct(); $this->load->database(); $this->load->model('topic_model'); } function index() { $data=$this->topic_model->gets(); //topic_model.php 의 gets라는 method를 사용하여 $data에 넣겠다. $this->load->view('main',array('topics'=>$data)); } function get($id) { $topic=$this->topic_model->get($id); $this->load->view('get',array('topic'=>$topic)); //기존 $id에서 $topic 값을 가져오는 것으로 수정. } |
views/main.php
This is Main page. <? foreach($topics as $entry) { ?> <li><a href="index.php/topic/get/<?=$entry->id?>"><?=$entry->id?></a></li> <? } ?> |
메인페이지에 리스트를 뿌려주는 view 파일을 각각 리스트 정보안에서도 활용 하기 때문에 중복이 된다.
위 빨간색 표시 부분을 잘라내기 하여 topic_list.php 파일로 변경하고 controller 파일에서 불러옴.
views/main.php
This is Main page. |
views/topic_list.php
<? foreach($topics as $entry) { ?> <li><a href="index.php/topic/get/<?=$entry->id?>"><?=$entry->id?></a></li> <? } ?> |
controller/topic.php
function __construct() { parent::__construct(); $this->load->database(); $this->load->model('topic_model'); } function index() { $topic_list=$this->topic_model->gets(); //전체 리스트를 디비에서 가져옴. $this->load->view('main'); //main 페이지는 더이상 받을 인자가 없다. $this->load->view('topic_list',array('topics'=>$topic_list)); //전체 리스트를 뿌려줌. } function get($id) { //전체 리스트에서 선택된 정보값을 출력해주는 부분(이곳에 전체리스트를 다시 가져옴.) $topic_list=$this->topic_model->gets(); //전체 리스트를 디비에서 가져옴. $topic=$this->topic_model->get($id); $this->load->view('get',array('topic'=>$topic)); //기존 $id에서 $topic 값을 가져오는 것으로 수정. $this->load->view('topic_list',array('topics'=>$topic_list)); // 정보를 보여준 후 전체 리스트를 뿌려준다. } |
'Programming > CodeIgniter' 카테고리의 다른 글
URI Routing (0) | 2015.09.07 |
---|---|
Bootstrap 라이브러리 (0) | 2015.09.07 |
Model(3/5) - 소스 중복제거 (0) | 2015.09.07 |
Model(2/5) - 리스트와 각 리스트 정보 구현 (0) | 2015.09.04 |
Model(1/5) - 설정 및 사용 (0) | 2015.09.04 |