Эй, ребята, я только что узнал о маршрутизации в CodeIgniter, и теперь я немного запутался.CodeIgniter: URL маршрутизации на Codeigniter
У меня есть URL-адрес, как это: http://localhost/norwin/list_group/get_product_by_group/1
который:
list_group является контроллером,
get_product_by_group является методом,
и '1' передается параметр.
Я хочу свести к минимуму URL-адрес с помощью маршрута. Таким образом, я могу иметь URL вроде:
http://localhost/norwin/group/'group_name'
И это мой код на route.php:
$route['group/(:any)'] = 'list_group/get_product_by_group/$1';
это мой контроллер:
public function get_product_by_group($group_name)
{
if($this->uri->segment(3))
{
$this->load->database();
$data['product_data'] = $this->group_model->list_product_by_group($group_name);
$this->load->view('fend/list_product', $data);
}
else
{
redirect('list_group');
}
}
И это мой код на вид вызова, который вызывает контроллер:
<?= base_url('group/'. $value->group_name);?>
мой про blem is: Я не могу получить никакого результата по маршруту, он всегда посылает меня на 'list_group'.
Возможно, у кого-то есть хороший подход для этого.
Благодарим за помощь.
конфигурация маршрута отлично. с какими ошибками вы сталкиваетесь? – Kamran
@KamranAdil: результат всегда перенаправляет меня на «list_group» – TableMan
, он перенаправляет вас, потому что у вас нет '$ this-> uri-> segment (3)' в вашем URL-адресе. У вас есть только две группы «group» и «group_name». измените его на '$ this-> uri-> segment (2)' – Kamran