重定向到具有多个模型对象的路由 - Laravel

Redirect to Route with Multiple Model Objects - Laravel

我正在尝试重定向到我在 Laravel 4.2 中设置的路由,并将多个模型对象传递给它。

我的控制器中有一个search功能

function search()
{
//do search things
 if($type=="sale")
 {
  return Redirect::route('saleSearchResults')->withResults($results); 
 }elseif($type=="rent")
  {
  return Redirect::route('rentSearchResults')->withResults($results);
  }
}

$results 变量是从对数据库执行搜索查询返回的,它包含一个列表模型对象的多个实例。无论如何我可以将这些结果传递给路线吗?

我知道我可以传递模型的单个实例(模型绑定)以及单个参数,但我似乎无法传递模型的多个实例。

我想这样做的原因是因为我有一条搜索路径可以转到我的 search 函数。

然后我希望搜索结果根据搜索类型转到不同的 url。

搜索表单帖子到 /search

促销搜索的结果显示在 /for-sale/search-results/

租金搜索结果显示在 /for-rent/search-results/

有什么办法可以做到这一点吗?

withResults() 对我来说似乎是正确的方法。它将变量存储在一个请求的会话中,您可以通过以下方式在另一个控制器中检索它:

$results = Session::get('results');