【问题标题】:Pass search query to view通过搜索查询查看
【发布时间】:2019-09-27 07:50:16
【问题描述】:

我想将搜索查询传递给 laravel 视图,现在我尝试使用 compact 和 compatct-> 但结果仍然是相同的“未定义变量:查询”

我尝试通过单一查询“abc”、“bcd”等硬代码。它的工作 /kategoria?query=abc&page=2,但是当我想制作一些通配符时,我无法将变量查询传递给查看。

搜索控制器功能

public function kategorie(Request $request)
    {

        $query = $request->input('query');     


        $pages = Page::where('kategoria', 'like', "%$query%")
                      ->orWhere('tags', 'like', "%$query%")
                      ->paginate(5);




        return view('kategoria')->compact('pages')->with('query', $query);
    }

查看分页输出(可以,但我需要搜索结果而不是 abc)

{{ $pages->appends(['query' => 'abc' ])->links() }}

查看带有变量的分页并且不起作用:/

{{ $pages->appends(['query' => $query ])->links() }}
ErrorException {#745 ▼
  #message: "Undefined variable: query"
  #code: 0
  #file: "/home/mitek91/domains/test91.vot.pl/public_html/obito/storage/framework/views/653b682019bed23b6b130f5076f5c885047247fb.php"
  #line: 1
  #severity: E_NOTICE
}

【问题讨论】:

    标签: php laravel


    【解决方案1】:

    您可以像这样将所有查询 GET 参数附加到分页链接中:

    {{ $users->appends($_GET)->links() }}
    

    【讨论】:

    • 谢谢,我有这个问题 13 小时,你帮助我,我非常感激
    【解决方案2】:

    我认为你的退货声明应该是这样的:

    public function kategorie(Request $request)
    {
        $query = $request->input('query');     
    
        $pages = Page::where('kategoria', 'like', "%$query%")
                        ->orWhere('tags', 'like', "%$query%")
                        ->paginate(5);
    
        return view('kategoria', compact('pages', 'query'));
    }
    

    这相当于:

    return view('kategoria', [
        'pages' => $pages,
        'query' => $query
    ]);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-10-20
      • 1970-01-01
      • 2012-09-26
      • 1970-01-01
      • 2018-02-16
      • 2016-05-21
      • 1970-01-01
      相关资源
      最近更新 更多