2015-06-12 3 views
2

Я изучаю себя как кодировщик. Я строю газетный киоск. На моем сайте есть две «части»: меню и основное содержание. Меню является статическим и не должно перезагружаться каждый раз.Codigniter: Периодически перезагружается ли страница?

Я прочитал кое-что о Partials в кодеигниторе, но теперь я немного смущен. У меня есть 'общий вид', как это:

общее:

<!DOCTYPE html> 
<?php $this->load->view('partials/page_head');?> 
    <body> 

    <div class="wrapper"> 
     <header> 
      <div class="logo">Logo</div> 
     </header> 
      <?php $this->load->view('partials/menu');?> 
     <div id="content"> 
      $content; 
     </div> 
    </body> 
</html> 

И в контроллер:

<?php 
class News extends CI_Controller { 

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

    public function latest() { 
     $this->data['content'] = 'latest'; 
     $this->load->view('layout/general', $this->data); 
    } 

    public function detailed() { 
     $this->data['content'] = 'detailed'; 
     $this->load->view('layout/general', $this->data); 
    } 
} 

Но что произойдет, если я называю последним() - функция для создания моего представления? Заменяет ли codeigniter часть содержимого? Или всю общую страницу, включая частичные. Я искал в Интернете, но читал об этом разные вещи. Я знаю, что я мог бы использовать ajax-призывы для этого, но я хотел знать, может ли codeigniter сделать то же самое для меня?

+0

codeignitor генерировать целую страницу html каждый раз. независимо от того, сколько партиций вы включили. – jagad89

ответ

0

Для обновления каждой страницы Codeigniter выполняет обновление всей страницы. В вашем случае при вызове метода latest(), он будет делать следующее:

  • создать переменную $this->data['content']
  • отправить $this->data к general зрения и нагрузки
  • general вид получает никаких «партиалы» и

Этот процесс будет происходить каждый раз, когда вы обновляете страницу.

Теперь, я знаю, что вы упомянули AJAX. AJAX был бы очень полезен, если бы вы хотели просто получить или получить определенные данные, относящиеся к странице, без необходимости перезагрузки всей страницы.

Смежные вопросы