Как получить имя пользователя из сообщения в блоге? - PullRequest
1 голос
/ 09 июля 2020

Я попытался установить связь между сообщением и пользователем, чтобы показать сообщение с именем пользователя. Но произошла ошибка. Он показал сообщение: SQLSTATE [42S22]: Столбец не найден: 1054 Неизвестный столбец 'users.post_id' в 'where clause' (SQL: select * from users where users. post_id в (2))

    //User Model
    public function posts()
    {
        return $this->hasMany('App\Post');
    }

    //Post Model
    public function user()
    {
        return $this->hasOne('App\User', );
    } 

    // Now the post controller
    public function show($id)
    {
      $post = Post::with('user')->find($id);
      return view('posts.show')->with('post',$post);
    }

Ответы [ 2 ]

2 голосов
/ 09 июля 2020

Пользователь имеет много Post, поэтому это будет отношение hasMany .
Сообщение принадлежит (зависит от) User , поэтому это будет belongsTo .

Модель пользователя :

public function posts()
{
    return $this->hasMany('App\Post');
}

Модель стойки :

public function user()
{
     return $this->belongsTo('App\User');
} 
1 голос
/ 09 июля 2020

замените приведенным ниже кодом, все работает нормально.

User Model
public function posts()
{
    return $this->hasMany('App\Post');
}
Post model
public function user()
{
     return $this->belongsTo('App\User');
} 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...