Проблема маршрутизации с FuelPHP
Я использую FuelPHP для создания простого веб-приложения с фотогалереей. Все фотографии должны принадлежать галерее и могут принадлежать только одной галерее. Учитывая, что фотография должна существовать как компонент галереи, я хочу, чтобы моя структура URL выглядела примерно так:
Чтобы проиндексировать все фотографии в галерее #4/admin/galleries/4/photos
Редактировать фото 17 в галерее 2/admin/galleries/2/photos/edit/17
...так далее. Довольно очевидная картина. Я добавил следующую строку в мой routes.php
чтобы начать вещи
admin/galleries/:gid/photos' => array('admin/photos/index')
... но в гостях /admin/galleries/4/photos
дает мне 404. Мысли? Есть ли другой шаблон маршрутизации, который я должен использовать?
2 ответа
Вот как я бы в итоге написал это:
// To edit photo 17 in gallery 2
'admin/galleries/(\d+)/photos/edit/(\d+)' => 'admin/photos/edit/$1/$2',
// To index all photos in gallery #4
'admin/galleries/(\d+)/photos' => 'admin/photos/index/$1',
Это при условии, что ваш контроллер выглядит примерно так:
class Controller_Photos extends \Controller {
public function action_index($gallery) {
}
public function action_edit($gallery, $photo) {
}
}
Как создать эту ссылку? использование
\Uri::create
или же
Router::get()