2015-10-22 4 views
0

Я работаю на примере новости раздела, как показано в ссылке ниже: http://www.codeigniter.com/userguide2/tutorial/news_section.htmlвид функции в контроллере CodeIgniter

Он содержит две функции в индексе контроллера и представления. Когда я удаляю функцию просмотра с моего контроллера, тогда я получаю тот же результат. Может ли кто-нибудь из вас помочь мне понять необходимость просмотра функции в контроллере?

<?php 
class News extends CI_Controller { 

    public function __construct() 
    { 
     parent::__construct(); 
     $this->load->model('news_model'); 
    } 

    public function index() 
    { 
     $data['news'] = $this->news_model->get_news(); 
     $data['title'] = 'News archive'; 

     $this->load->view('templates/header', $data); 
     $this->load->view('news/index', $data); 
     $this->load->view('templates/footer'); 
    } 
    public function view($slug) 
    { 
     $data['news_item'] = $this->news_model->get_news($slug); 

     if (empty($data['news_item'])) 
     { 
      show_404(); 
     } 

     $data['title'] = $data['news_item']['title']; 

     $this->load->view('templates/header', $data); 
     $this->load->view('news/view', $data); 
     $this->load->view('templates/footer'); 
    } 


} 
+0

Здесь вы можете найти обе версии кодерининга руководства пользователя. http://www.codeigniter.com/docs – user4419336

ответ

2

Как CodeIgniter URLS работа заключается в следующем:

example.com/controller/method/param1[/param2...] 

От: http://www.codeigniter.com/userguide2/general/urls.html

Когда вы идете в yoursite.com/news, он автоматически запускает функцию index(). Но, что, если вы отправились в yoursite.com/news/view/1234?

Затем он выполнит вашу функцию view() и передаст '1234' в качестве параметра ($slug).

+0

, так что вы говорите, что это просто показать правильные вещи, если существует 1234? –

+0

Да, в основном. –