【问题标题】:Getting Call to a member function paginate() on array error in laravel在laravel中的数组错误上调用成员函数paginate()
【发布时间】:2020-03-31 08:11:21
【问题描述】:

我在 laravel 中使用以下代码获取对成员函数 paginate() 数组错误的调用

public static function search_query($query)
{
    $tokenizeitem = array();
    $tokenizeitem = queryarr($query);

    //$tokenizeitem = $this->bbbootstrap->tokenizeStringIntoFTSWords($item);

    $sql = "SELECT * FROM snippets WHERE MATCH(snippets_name,seo_description) 
    AGAINST (' ";

    foreach ($tokenizeitem as $w) {
        $sql .= '+' . $w . '* ';
    }

    $sql .= "' IN BOOLEAN MODE)";

    $searchdata=DB::select( DB::raw($sql))->paginate(15);

    return $searchdata;
}

【问题讨论】:

    标签: laravel laravel-paginate


    【解决方案1】:

    错误是不言自明的:

    在 laravel 中数组错误时调用成员函数 paginate()

    您的以下代码:

    DB::select( DB::raw($sql))->paginate(15);
    

    返回一个数组,你不能在数组上调用paginate()。所以不要这样使用:

    DB::table("your query")->paginate();
    

    Laravel Raw Query Reference

    【讨论】:

    • 我可以像 DB::table($sql)->paginate() 那样在表中传递 $sql;
    • 那我就看不懂怎么整了!
    • 搜索一下,你会有所收获
    • 我这样做并获得了结果,但分页现在不起作用 $searchdata = DB::table('sn-ps') ->selectRaw("*") ->whereRaw($sql) ->分页(20);
    猜你喜欢
    • 2018-05-19
    • 1970-01-01
    • 1970-01-01
    • 2016-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-10
    • 1970-01-01
    相关资源
    最近更新 更多