Codeigniter, урок 4/27, 404
В уроке 3 все прошло полностью по плану.
Урок 4 же привел к тому, что при указании адреса дальше news/ срабатывает show_404() и отображается 404 page not found
Сделано было все в точности так же, как и в видео, и перепроверено несколько раз
$route['news/(:any)'] = 'news/view/$1';
в routes.php есть.
функция getNews() в News_models.php выглядит так:
public function getNews($slug = FALSE) {
if ($slug === FALSE) {
$query = $this->db->get('news');
return $query->result_array();
}
$query = $this->db->get_where('news', array('slug' => $slug));
return $query->row_array();
}
view() в News.php выглядит следующим образом:
public function view($slug = NULL) {
$data['$news_item'] = $this->news_model->getNews($slug);
if(empty($data['news_item'])) {
show_404();
}
$data['title'] = $data['news_item']['title'];
$data['content'] = $data['news_item']['text'];
$this->load->view('templates/header', $data);
$this->load->view('news/view', $data);
$this->load->view('templates/footer');
}
Проблем с доступом к базе данных нет, потому что, как сказал, после прошлого урока данные из нее вполне себе без проблем выводились.
Я попробовал убрать проверку if(empty($data['news_item'])) {}, вот, что выдает браузер после этого:
A PHP Error was encountered
Severity: Notice
Message: Undefined index: news_item
Filename: controllers/News.php
Line Number: 25
Backtrace:
File: C:\xampp\htdocs\kinomonster\application\controllers\News.php
Line: 25
Function: _error_handler
File: C:\xampp\htdocs\kinomonster\index.php
Line: 315
Function: require_once
затем то же самое, но со строчкой 26 в News.php, после чего выводи view news (то есть, то, что в файле news/view.php)
упомянутые в сообщении строчки:
$data['title'] = $data['news_item']['title'];
$data['content'] = $data['news_item']['text'];
из News.php и
require_once BASEPATH.'core/CodeIgniter.php';
в index.php
Честно пытался понять, где именно вообще может быть ошибка, но - никак. Очень надеюсь на подсказку.