情况非常棘手......比如我有网址
http://example.com/users
显示所有用户。我也有很少的过滤器,如
http://example.com/users?sort_type=ASC&sort_value=surname
或
http://example.com/users?sort_type=DESC&sort_value=name
。
还有一个看起来像这样的搜索
http://example.com/users/search/by_name/?search_value=bob
或http://example.com/users/search/by_surname/?search_value=miller
。
对于搜索,我还需要添加过滤参数,因此主要问题在于第一个符号:当有用户列表时,它应该是?
,当搜索&
时。那么是否有一些url生成函数用于从URL参数生成url?
答案 0 :(得分:1)
路由掩码未使用的所有值都将追加为查询参数。 (将路线名称从'用户'更改为您的)
URL::route('users', array(
'sort_type' => 'ASC',
'sort_value' => 'surname'
));
如果您不使用路线,请使用类似
的内容$query = http_build_query(array(
'sort_type' => 'ASC',
'sort_value' => 'surname'
));
URL::to(action('UserController@index') . '?' . $query );