Я создаю систему комментирования блогов.
Я хочу показать комментарии пользователей в show.blade.php.
В моем контроллере результатов я выполнил
дд ($ post-> комментарии);
Но я не могу получить какие-либо комментарии из своей базы данных.
Я добавил четыре комментария к записи. И пользователь может ответить на каждый комментарий.
таблица миграции
Schema::create('comments', function (Blueprint $table) {
$table->bigIncrements('id');
$table->integer('user_id');
$table->integer('post_id');
$table->text('body');
$table->integer('comment_id')->nullable();
$table->timestamps();
});
Comment.php
public function posts()
{
return $this->belongsTo(Post::class);
}
public function user()
{
return $this->belongsTo(User::class);
}
public function replies()
{
return $this->hasMany(Comment::class, 'comment_id')->whereNotNull('comment_id');
}
Post.php
public function comments()
{
return $this->hasMany(Comment::class)->whereNull('comment_id');
}
User.php
public function comments()
{
return $this->hasMany(Comment::class);
}
Mysql
ResultsController.php
public function show($id,Post $post)
{
$particular_post= Post::find($id);
$recommended_posts = Post::latest()
->whereDate('date','>',date('Y-m-d'))
->where('category_id','=',$particular_post->category_id)
->where('id','!=',$particular_post->id)
->limit(7)
->get();
$posts['particular_post'] = $particular_post;
$posts['recommended_posts'] = $recommended_posts;
dd($post->comments);
return view('posts.show',compact('posts'));
}
http://127.0.0.1:8000/results/52 Это URLкоторый должен получить комментарии.