paginate()函数抛出异常 - PDOException SQLSTATE [HY093]:Laravel中的参数号无效

时间:2017-09-11 06:03:34

标签: php mysql laravel laravel-5 pdo

我正在使用以下代码从Laravel中的数据库中获取记录

$products = new Product();
$products = $products->orderBy('id', 'DESC')->paginate(10);

但它引发了异常

  

PDOException SQLSTATE [HY093]:参数号无效

它还显示以下错误:

  

Illuminate \ Database \ QueryException SQLSTATE [HY093]:参数无效   number(SQL:选择count(*)作为聚合来自' tbl_products'其中   #&39; tbl_products'' deleted_at'是null和' category_id' = 10和created_at   之间和?)

我试图找到一个已经发布的解决方案here,但对我没有用。

在执行上面的代码之前,我已经在函数中编写了代码,我认为代码正在影响。

$timeframe = Input::get('daterange');
$products = $products->whereBetween('created_at', $timeframe);

1 个答案:

答案 0 :(得分:2)

$products = new Product();
$products = $products->orderBy('id', 'DESC')->paginate(10);

这不会获取记录 - 您正在创建一个新的空产品对象,然后尝试查询它。

要检索所有产品并订购并对其进行分页,请尝试以下操作:

$products = Product::orderBy('id', 'DESC')->paginate(10);