我的模板文件中有一个表单:
{{ Form::open(array('route' => 'get.index', 'method' => 'get')) }}
{{ Form::label('order', 'Order by') }}
{{ Form::select('order' , array('firstname' => 'First Name', 'lastname' => 'Last Name', 'state' => 'State')) }}
{{ Form::submit('Order results') }}
{{ Form::close() }}
提交时,此表单输出一个名为order的GET查询变量,因此我的URL将为:
http://my.app/?order=firstname
这是get.index路线:
Route::get('/', array('uses' => 'HomeController@index', 'as' => 'get.index'));
是否有一种简单的方法可以将URL从上面的URL更改为类似的内容
http://my.app/order/fistname/
?
答案 0 :(得分:0)
您可以拥有这样的路线的唯一方法是使用route parameter:
Route::get('/order/{type}', array(
'uses' => 'HomeController@index',
'as' => 'get.index'
));
然后您可以在控制器方法中使用type
参数:
public function index($type) {
}
但除非您在javascript中格式化表单操作值以适合此路由,否则它将无法与您的实际表单一起使用。
但是,如果您可以使用其他内容而不是表单,则可以使用HTML a
标记轻松执行此操作,例如:
Order by:
<a href="{{ route('get.index', 'firstname') }}">firstname</a>
<a href="{{ route('get.index', 'lastname') }}">lastname</a>