我正在尝试建立一个仅包含一个数据库表的论坛;称为discussions_posts
。这是结构-
$table->increments('id');
$table->unsignedInteger('user_id');
$table->unsignedInteger('child_of')->nullable();
$table->unsignedInteger('category_id')->nullable();
$table->string('title')->nullable();
$table->mediumText('body')->nullable();
$table->boolean('active');
$table->unsignedInteger('last_reply_by')->nullable();
$table->timestamps();
$table->foreign('user_id')->references('id')->on('users');
线程始终以child_of
设置为null
的帖子开头,随后是child_of
等于第一篇帖子的id
的所有后续帖子。
问题在于渲染线程索引时;它需要显示所有在线程中更新的“线程”(即上次发布的时间戳)的排序方式。
我尝试了以下操作-
Post::latest()->get();
这将获取所有posts
(无论它们是第一条帖子还是任何主帖子的子帖子)。
我想在线程索引上显示以下信息-
线程的标题(需要查找该主题的第一篇文章)
发布最新回复的人。我需要提取他们的用户头像和姓名。
如果有人可以向我展示一种实现方法,我将非常感谢。