Упрощение контроллеров CodeIgniter - PullRequest
0 голосов
/ 05 августа 2011

У меня есть блок кода, который я хотел бы поместить в папку ядра CI 2.x и повторно использовать через базовый контроллер, который будет расширен всеми моими другими контроллерами.

Вот кодэто появляется в каждом контроллере, и я хочу перейти в более центральное место:

$data['navigation'] = generate_navigation();  // helper function
$data['country'] = code2country();  // helper function
$data['langs'] = $this->select_country_model->get_langs();

// Get copy and images for page
$query = $this->common_model->get_content('markets', 'architectural');

// Load title, description and keywords tags with data
foreach ($query as $row) {
    $data['title'] = $row->page_title;
    $data['description'] = $row->description;
    $data['keywords'] = $row->keywords;
}

Как мне поместить это в мой базовый контроллер (MY_controller.php), а затем отправить данные в мое представление из расширенного контроллера,Я все еще использую $data[] = и $this->load->view('whatever', $data)?

1 Ответ

1 голос
/ 05 августа 2011

Да, вы все равно можете передать это в переменной $data, но вам нужно назначить ее так, чтобы вы могли получить к ней доступ с другого контроллера, например:увеличьте свой контроллер до MY_Controller, и у вас будет доступ к $data с помощью $this->data.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...