Laravel 5 抛出一个异常:BadMethodCallException,消息为“调用未定义的方法 Illumin


Laravel 5 Throw an exception: BadMethodCallException with message 'Call to undefined method IlluminateDatabaseQueryBuilder::tags()

我正在使用Laravel 5,我对这个框架有点陌生。我搜索了很多问题,但作为回报,我没有得到任何相关的东西。

所以,我有两个模型:文章和标签。

在文章模型中,我有这样的方法:

public function tags() {
    return $this->belongsToMany("App'Tag");
}

在我的标签模型中,我有这样的方法:

public function articles() {
    return $this->belongsToMany("App'Article");
}

现在的事情是,当我在这样的修补中测试它时:

$article->tags()->attach(1);

它给了我以下异常:

BadMethodCallException,消息为"调用未定义的方法Illuminate''Database''Query''Builder::tags()"

但是当我这样称呼它时:

$tag->articles()->attach(1);

完全像一个魅力,它不会抛出任何类型的异常。

我实际上是从 Laracast 那里学习这些东西的,我的类、方法和文件有点像这样:BadMethodCallException,消息为"调用未定义的方法Illuminate''Database''Query''Builder::belongToMany()"

除了我认为我没有错别字问题。

好吧,我自己得到了答案,只是分享给其他人。

代码没有任何问题。

我应该重新启动修补匠。这是一个修补匠的问题。

相关文章: