【发布时间】:2019-08-28 02:01:56
【问题描述】:
我有一个名为Conversation 的模型。我想通过对它们进行分页来显示视图中的所有行。我知道使用paginate() 方法或simplePaginate() 方法对结果进行分页。
在我的例子中,paginate() 和 simplePaginate() 都按预期对结果进行了分页。我想在刀片文件中显示分页链接。我也知道links()方法是用来做的。
但问题是,当我使用paginate() 时,links() 方法根本不起作用。当我使用simplePaginate() 时它可以工作。我不想使用simplePaginate(),因为它只显示上一个和下一个链接。
这是我正在使用的最小代码:
web.php
Route::get('/conversations', 'RouteController@conversations')->name('conversations');
RouteController.php
class RouteController extends Controller {
public function conversations(Request $request) {
$conversations = Conversation::paginate(10);
return view('conversations')->with('conversations', $conversations);
// I also tried return view('conversations', compact('conversations));
}
}
conversations.blade.php
..
<div>
{{ $conversations->links() }}
</div>
..
我阅读了文档,代码中的一切似乎都很好。有趣的是,在我离开的前一天它还在工作!
我不明白为什么会这样? 这是预期的行为吗?还是我错过了什么?
【问题讨论】:
-
您是否尝试过在刀片中使用
{!! $conversations->render() !!}而不是links()?还要检查它是否需要css类才能正确显示,检查元素并检查它是否存在?也尝试发布默认分页资源php artisan vendor:publish --tag=laravel-pagination -
是的,我也试过
{!! $conversations->render() !!}。并且在检查 html 中不存在该元素。您的第三个解决方案有效,即php artisan vendor:publish --tag=laravel-pagination。如果您可以将此作为答案发布,那么我会将其标记为已接受。谢谢:)
标签: php laravel-5.8 laravel-pagination