首页 >后端开发 >php教程 >如何通过帖子 ID 对 Laravel 评论进行排序?

如何通过帖子 ID 对 Laravel 评论进行排序?

Linda Hamilton
Linda Hamilton原创
2024-12-02 02:07:09653浏览

How to Order Laravel Comments by Post ID?

按帖子 ID 排序评论

在 Laravel 中,当迭代相关模型的集合时,通常需要对结果进行排序。默认情况下,评论不按任何特定条件排序,从而可能导致输出未排序。

要按帖子 ID 对特定帖子的作者发布的评论进行排序,请使用查询扩展用户评论关系用户模型中的函数:

<?php
public function comments()
{
    return $this->hasMany('Comment')->orderBy('column');
}
?>

将“column”替换为您希望排序的实际数据库列名称。这将确保在通过 Post 模型中的评论关系访问时按指定的顺序检索评论。

例如,要按帖子 ID 按降序对评论进行排序,请使用:

<?php
public function comments()
{
    return $this->hasMany('Comment')->orderBy('post_id', 'DESC');
}
?>

通过此修改,现在可以修改 foreach 循环以按所需顺序显示评论:

<pre class="brush:php;toolbar:false">
foreach($post->user->comments as $comment)
{
    echo "<li>" . $comment->title . " (" . $comment->post->id . ")</li>";
}

这将在以下位置输出评论以下顺序:

I love this post (3)
This is the second Comment (3)
This is a comment (5)

以上是如何通过帖子 ID 对 Laravel 评论进行排序?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn