Answers:
可以使用查询功能扩展关系:
<?php
public function comments()
{
return $this->hasMany('Comment')->orderBy('column');
}
[评论后编辑]
<?php
class User
{
public function comments()
{
return $this->hasMany('Comment');
}
}
class Controller
{
public function index()
{
$column = Input::get('orderBy', 'defaultColumn');
$comments = User::find(1)->comments()->orderBy($column)->get();
// use $comments in the template
}
}
默认的用户模型+简单的Controller示例;获取评论列表时,只需基于Input :: get()应用orderBy()。(确保进行一些输入检查;))
我相信您也可以:
$sortDirection = 'desc';
$user->with(['comments' => function ($query) use ($sortDirection) {
$query->orderBy('column', $sortDirection);
}]);
这使您可以在每个相关注释记录上运行任意逻辑。您可以在其中添加以下内容:
$query->where('timestamp', '<', $someTime)->orderBy('timestamp', $sortDirection);
appointments
和schedules
),查询很简单:appointments
通过来获取订单schedules
。datetime
下降。我有解决方案,方法是在表中添加新列appointments
以datetime
从table 存储schedules
。现在我只需要订购appointments
。datetime
我知道这不是最好的方法,但可以解决问题。XD