【发布时间】:2025-11-28 14:30:01
【问题描述】:
大家好,我正在尝试在 Laravel 4 中进行分页,但我的代码不起作用。 我有带动作的控制器:
public function getSingleProduct($prodName, $id)
{
$singleProduct = Product::getOne($id);
$getAllReviews = Review::getAllBelongsToProduct($id);
$this->layout->content = View::make('products.single')
->with('reviews', $getAllReviews)
->with('products', $singleProduct);
}
我想对 getAllReviews 进行分页(每页 5 个)。我试过这样:
$getAllReviews = Review::getAllBelongsToProduct($id)->paginate(5); 但它对我不起作用。这也是我的评论模型
public static function getAllBelongsToProduct($id) {
return self::where('product_id', '=', $id)
->join('products', 'reviews.product_id', '=', 'products.id')
->select('reviews.*', 'products.photo')
->orderBy('created_at', 'desc')
->get();
}
我哪里有错误?
【问题讨论】:
-
paginate和get不能一起使用。 -
那么,我怎样才能获得属于一个产品的所有评论并将这些评论分页?有什么解决办法吗?
-
不要使用这种静态方法。你为什么要使用它?我建议为此设置范围,因为它最终不是静态的 - 无论如何它都会实例化您的
Review模型。我将在几秒钟内向您展示如何使用范围 -
好的,谢谢,我已经开始使用 laravel 进行冒险了,所以我不是这方面的大师;p
标签: php laravel laravel-4 pagination