Метод Illuminate \ Database \ Query \ Builder :: languages ​​не существует - PullRequest
2 голосов
/ 17 мая 2019

Я пытаюсь прикрепить таблицу languages к таблице posts. Я уже настроил таблицу language_post со столбцами post_id и language_id. Когда я пытаюсь добавить Post с languages ​​, это выдает мне эту ошибку, как показано выше.

Проверено App/Language.php

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Language extends Model
{
    public function posts()
    {
        return $this->belongsToMany('App\Post')->withTimestamps();
    }
}
?>

В методе PostController, public function store(Request $request), где я получаю эту ошибку

//above this all fields working perfectly
 $post->save();
        $post->languages()->attach($request->languages);

1 Ответ

2 голосов
/ 17 мая 2019

Полагаю, вы забыли сделать то же самое для модели Post:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Post extends Model
{
    public function languages()
    {
        return $this->belongsToMany('App\Language')->withTimestamps();
    }
}
...