Laravel3如何从视图中将变量发送到控制器

时间:2013-09-04 13:23:24

标签: php laravel

我正在学习laravel 3,我有一个技术问题。我有一个作者列表,我正在尝试建立一些链接来设置过滤器来订购这些作者。

我尝试设置默认参数按名称排序,它可以工作,但我无法传递任何其他过滤器。

这是我的路线:

Route::get('authors', array('as'=>'authors', 'uses'=>'authors@index'));

这是我的控制器功能:

public function get_index($filter="name"){
    return View::make('authors.index')
        ->with('title', 'Authors list')
        ->with('authors', Author::order_by($filter)->get());
}

这是我视图中的链接,试图发送我想要的过滤器

{{ HTML::link_to_route('authors', 'Id', array('id')) }}
{{ HTML::link_to_route('authors', 'Name', array('name')) }}

我尝试从视图中发送的参数(id和name)永远不会到达控制器,所以它总是使用默认参数。

谢谢!

1 个答案:

答案 0 :(得分:0)

您没有设置任何路线参数,您必须执行以下操作:

Route::get('authors/(:any?)', array('as'=>'authors', 'uses'=>'authors@index'));

查看文档:{​​{3}}