В настоящее время у меня проблемы с Laravel 4. Я хотел бы использовать пули для категорий форумов и тем форума (уникальные слизняки). Чтобы определить, находится ли пользователь в категории или в теме, у меня есть этот маршрут:
Route::get('forum/{slug}', function($slug) { $category = ForumCategory::where('slug', '=', $slug)->first(); if (!is_null($category)) return Redirect::action('ForumCategoryController@findBySlug', array('slug' => $slug)); else { $topic = ForumTopic::where('slug', '=', $slug)->first(); if (!is_null($topic)) return Redirect::action('ForumTopicController@findBySlug', array('slug' => $slug)); else return 'fail'; } });
И когда я пытаюсь достичь категории, у меня есть следующая ошибка:
Route [ForumCategoryController@findBySlug] not defined.
Вот мой ForumCategoryController:
class ForumCategoryController extends BaseController { public function findBySlug($slug) { $category = ForumCategory::where('slug', '=', $slug)->first(); return View::make('forum.category', array( 'title' => 'Catégorie', 'category' => $category )); } }
В чем проблема ? Есть ли способ сделать это лучше? Помоги пожалуйста 🙂
Laravel говорит, что вам нужно определить маршрут использования Route::action()
, что-то вроде:
Route::get('forum/bySlug/{slug}', 'ForumTopicController@findBySlug');
Поскольку он действительно построит URL-адрес и выполнит его:
http://your-box/forum/bySlug/{slug}
Для этого он должен найти маршрут, указывающий на ваше действие.