为什么非要用 associate ?

为什么在创建订单的时候不把user_id赋值进去(当然模型里的fillable限制了user_id的可填充,可是我们可以打开啊),而要用associate关联进去,会不会多了一次数据库操作啊?下面的order_item也是?

《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
leo
最佳答案

这是 Laravel 推荐的用法,associate() 既可传入直接的 ID 值,也可以传入对象,比较方便。如果是传入 ID 值是没有额外的 SQL 查询的。

5年前 评论
讨论数量: 3

还有更能说服人的理由吗@leo

5年前 评论
zhengwhizz

@phpdi 更接近自然语义和面向对象。并且当你需要返回保存的实例时,associate 关联的对象也会一并返回。

5年前 评论
leo

这是 Laravel 推荐的用法,associate() 既可传入直接的 ID 值,也可以传入对象,比较方便。如果是传入 ID 值是没有额外的 SQL 查询的。

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!