Laravel 4:如何使用 Eloquent ORM“排序依据”
简单的问题 - 我如何在Laravel 4中按“id”降序排序。
我的控制器的相关部分如下所示:
$posts = $this->post->all()
据我所知,您使用这行:
->orderBy('id', 'DESC');
但是,这与我上面的代码如何契合呢?
简单的问题 - 我如何在Laravel 4中按“id”降序排序。
我的控制器的相关部分如下所示:
$posts = $this->post->all()
据我所知,您使用这行:
->orderBy('id', 'DESC');
但是,这与我上面的代码如何契合呢?
如果您使用 post 作为模型(没有依赖关系注入),则还可以执行以下操作:
$posts = Post::orderBy('id', 'DESC')->get();
如果您使用的是 Eloquent ORM,则应考虑使用作用域。这会将您的逻辑保留在它所属的模型中。
因此,在模型中,您将拥有:
public function scopeIdDescending($query)
{
return $query->orderBy('id','DESC');
}
在模型之外,您将拥有:
$posts = Post::idDescending()->get();