Как получить все данные с использованием отношения?

У меня три таблицы

users posts comments 

мой вопрос в том, как получить сообщение пользователя и опубликовать комментарии в одном запросе.

заранее спасибо

Ответ на ваш вопрос уже дал @ Nicklas Kevin Frank.

для получения следующей ошибки FatalErrorException в Model.php line 867: Ошибка Class 'Post' не найдена, в вашем классе модели измените свой hasmany на это: App \ User

 <?php class User extends Model { public function posts() { return $this->hasMany('App\Post'); } } 

в моделях должностей

 <?php class Post extends Model { public function comments() { return $this->hasMany('App\Comment'); } public function user() { return $this->belongsTo('App\User'); } } 

в модели комментариев

 <?php class Comment extends Model { public function posts() { return $this->belongsTo('App\Post'); } } 

и в вашем контроллере

 $data = User::findOrFail(1)->posts()->get(); 

Вы можете использовать следующее:

 User::find($id)->with('posts','posts.comments')->get(); 

Таким образом вы получаете пользователя, его сообщения и комментарии к сообщениям.

Для доступа к сообщениям, принадлежащим пользователю, вы должны сделать следующее:

 User::find($id)->with('posts')->get();