Laravel attach()错误

时间:2017-09-05 15:50:07

标签: php laravel

我有Recipe模型,与Category模型有关系(食谱可以分为多个类别)。

这是我的食谱模型中的关系代码:

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

在这里,我试图附上它:

$recipe = new Recipe;
$recipe->title = $request->recipe['title'];
$recipe->categories()->attach($request->categories);

当我运行我的代码时,我收到以下错误:

  

"调用未定义的方法Illuminate \ Database \ Query \ Builder :: attach()"

我失踪了什么?

1 个答案:

答案 0 :(得分:2)

attach()方法仅适用于many-to-many关系,不能用于一对多关系。

您对ReceipeCategory之间的一对多关系使用了附加方法。

您可以查看文档here