Вот один из моих маршрутов ...
Route::set('products', 'our-products(/<product>)')
->defaults(array(
'controller' => 'products',
'action' => FALSE
));
Посетив /our-products
, вы можете попасть в индекс товаров (который будет называться Controller_Products::action_index()
).
Я хочу, чтобы маршрут работал следующим образом: при добавлении дополнительного продукта он должен вызывать другой метод, т. Е. Если запрашивается /our-products/product-a
, вместо вызова Controller_Products::action_index()
он вызывает что-то вроде Controller_Products::action_get('product-a')
.
Я понимаю, что мог бы легко сделать это с двумя маршрутами, но я бы предпочел сделать это с одним.
Я также думал о проверке параметра в action_index()
и вызове другого метода, но это звучало ужасно.
Я также пытался __call()
, но получил эту очень необычную ошибку ...
Неустранимая ошибка: объявления классов не могут быть вложены в /home/user/public_html/~new/system/classes/date.php в строке 3
Можно ли делать то, что я хочу? Какой самый лучший способ?
Спасибо