【问题标题】:Redirect to Route with Multiple Model Objects - Laravel使用多个模型对象重定向到路由 - Laravel
【发布时间】:2015-02-10 14:16:02
【问题描述】:

我正在尝试重定向到我在 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/

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

【问题讨论】:

    标签: php laravel routes


    【解决方案1】:

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

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

    【讨论】:

    • 啊当然!我没有尝试用Session 检索它们(出于某种原因,我认为这行不通!)问题解决了,非常感谢!
    猜你喜欢
    • 2022-01-26
    • 2017-06-19
    • 2021-04-26
    • 2019-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-16
    • 2020-05-28
    相关资源
    最近更新 更多