模型A hasOne 模型B,那么B应该 hasOne A 还是 belongsTo A更合理?

模型A hasOne 模型B,那么B应该 hasOne A 还是 belongsTo A更合理?

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

A hasOne(有一个) B. B那就应该belongsTo(属于) A

1年前 评论
讨论数量: 10

A hasOne(有一个) B. B那就应该belongsTo(属于) A

1年前 评论

只能是 belongsTo。你试试 hasOne,代码会报错。

1年前 评论
勇敢的心 (楼主) 1年前
ㅤㅤ (作者) 1年前
勇敢的心 (楼主) 1年前
ㅤㅤ (作者) 1年前

看外键在哪里,如果是外键用 belongsTo

1年前 评论

看需求,甚至可以 模型 A hasOne 模型 B 的同时 模型 A hasMany 模型 B

1年前 评论
22 (作者) 1年前
laravel_peng

模型关联应该分一个主模型和子模型,它们之间有从属关系:

  • 主模型:是被引用的模型(自身没有外键,一般是自增 id 被引用),所以主模型是 hasOne(有一个)子模型关联 。
  • 子模型:是引用其它模型的模型。(本身有外键,一般引用主模型自增id),所以子模型是 belongsTo (属于)主模型关联。
1年前 评论

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