0
数日前、私はユーザーが投稿にコメントできるウェブサイトを見ました。他のユーザーはそれに返信することができます。リプレイには以下の例のスクリーンショットのような返事を付けることができます。laravel雄弁なネストされたコメントと返信
だから私は試してみると思っていましたが、何とかそれを理解できませんでした。 は、ここに私のデータベースには、これは完全にコメントや返信を返すモデル
でSchema::create('comments', function (Blueprint $table) {
$table->increments('id');
$table->unsignedInteger('user_id');
$table->unsignedInteger('post_id');
$table->unsignedInteger('reply_id')->default(0);
$table->text('body');
$table->timestamps();
});
関係
class Comment extends Model
{
protected $fillable = [
'user_id',
'post_id',
'reply_id',
'body'
];
public function user()
{
return $this->belongsTo(User::class);
}
public function post()
{
return $this->belongsTo(Post::class);
}
public function replies()
{
return $this->hasMany(Comment::class,'reply_id','id');
}
コントローラで
$comments = Comment::with('replies')->where('reply_id','=',0)->get(['id','reply_id','body']);
return response($comments);
に設定されています。しかし、返信の返事があれば、それは現れません。どうやってやるの?提案が必要です。