方法Illuminate\Database\Query\Builder::语言不存在

Method Illuminate\Database\Query\Builder::languages does not exist

我正在尝试将 languages table 附加到 posts table。我已经设置了一个 language_post table 和一个 post_id 和一个 language_id 列。当我尝试用 languages 添加 Post 时,它会给我这个错误,如上所示。

选中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);

我猜你忘了对 Post 模型做同样的事情:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

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