Laravel网站循环导航订单

时间:2016-05-14 22:32:02

标签: php laravel web navigation

我目前正在使用Laravel 5.2完成我的大学论文,它是一个类似于www.udacity.com的课程网站。

我有以下型号:

  • 测验

课程可以有很多章节,章节可能有也可能没有很多小测验。我在每个模型中都指定了这些关系。

我希望遵循与Udacity相同的查看顺序,其中用户只有"之前的"和" next"按钮循环播放课程。所以,如果我正在查看课程介绍,唯一可用的按钮是" next",这将带我到课程的第一章,那一刻我会有两个按钮,前一个按钮我回到课程介绍中,如果它没有任何测验,下一个将带我参加第一章的测验或下一章。

Udacity Order Example

目前,我有一个糟糕的上一个和下一个按钮逻辑,其中包含if语句,以确定是否有下一个/上一个章节/测验。

实现这一目标的最佳实践形式是什么?

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

为什么不使用Laravel的分页?
https://laravel.com/docs/5.1/pagination

$chapters = App\Chapter::paginate(1);
or something like
$chapters = App\Course::find(1)->chapters()->paginate(1);

每页应该给你1章 然后,您可以使用帮助器方法在视图中获取上一个和下一个链接,而不是显示所有链接:

$results->hasMorePages()
$results->nextPageUrl()
$results->previousPageUrl()