Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 26.10.2012 22:38:43

Забрать параметр из route

есть роутер

Route::get('news/detail-(:num)', array('as' => 'news_detail', 'uses' => 'frontend.news@detail'));

URL

news/detail-3

как в контроллере забрать цифру 3?

Не в сети

#2 27.10.2012 09:03:43

Re: Забрать параметр из route

А просто PHPpublic function detail($num) не работает?

Не в сети

#3 27.10.2012 11:20:43

Re: Забрать параметр из route

url полностью передается в контроллер, в том числе wildcard.
Достаточно передать параметр обработчику, например:

Route::get('news/detail-(:num)', array('as' => 'news_detail', 'uses' => 'frontend.news@detail'));

В контроллере

class News_Controller extends Base_Controller {

      ...
	public function action_detail($newsID)
	{
		
		return "Читаем новость с ID= ". $newsID;
	}
     ...
}

Кстати, в документации на Laravel 2 это было, а потом как-то ""затерялось" smile

Не в сети

#4 27.10.2012 13:27:05

Re: Забрать параметр из route

думал есть более изящный способ, давно перестал пользоваться данным методом, позабыл о нём...
спс

Не в сети

#5 27.10.2012 13:35:28

Re: Забрать параметр из route

А что неизящного в предложенном выше? Тебе надо назвать маршрут («as»), направить его в контроллер («uses») и принять там параметр («($newsID)») — по-моему проще не придумать.

Не в сети

Подвал раздела