Laravel 模型关联attach,save,sync方法参数类型验证

先说结论,验证过程在下面:

Laravel中,attach,save,sync方法参数类型

121.png

使用tinker来验证laravel中save()方法,attach方法(),sync方法的参数区别:

首先,取得一个article对象,article和category的关系是多对多,我们先查看一下。此时article下只有1条category关联。

attach方法:

1.尝试添加id,建立关联

添加关联成功

2.尝试添加对象,建立关联

此时关联了2次id为3的category,数据正确。添加成功!

3.尝试添加id数组,建立关联

关联建立成功!

4.尝试添加对象数组,建立关联

添加失败!

Save()方法:

1.尝试添加id,建立关联

添加失败!

2.尝试添加对象,建立关联

添加成功!

3.添加对象数组,文档中表明需要用saveMany方法

sync()方法:

文档中写明了可以传id和id数组进去,我们在这里用id数组进行测试

1.添加id数组,建立关联

结果:

我们看到sync分别调用了attach方法,detach方法,update方法,关联成功!

2.尝试添加对象,建立关联

添加成功!

3.尝试添加对象数组,建立关联

结果:

添加失败!

日记本

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

赞赏支持
被以下专题收入,发现更多相似内容