Laravel检索模型中线程的最后一条记录

时间:2014-08-05 08:33:53

标签: laravel model eloquent

对于某个论坛,我会检索所有帖子。我可以通过

访问它们
$thread->posts

目前我可以通过执行

来检索为此线程保存的最后一篇文章
$thread->posts[0]->author

但我喜欢像

这样的更好的解决方案
$thread->last_post

但我需要你的帮助我被困了

2 个答案:

答案 0 :(得分:1)

你可以把这个放入你的Thread模型:

public function last_post() {
    return $this->hasOne('Post')->orderBy('id', 'desc');
}

然后您可以按照自己的意愿访问它。

答案 1 :(得分:1)

您只需在Thread模型中创建方法:

public function lastPost() {
    return $this->posts[0];
    // OR: return $this->posts->first();
}

var_dump($thread->lastPost()->author);