是否可以使用 Laravels HasOne关系也作为 HasOneOrZero 关系?
示例: 在docs HasOne 关系描述了用户和电话之间的关系。如果每个用户都有 0 或 1 电话,是否可以使用此 realtion?或者我需要一个 OneToMany relation还允许 0 吗?
我不确定 HasOne如果我将它用作 HasOneOrZero 关系,关系可能会导致任何问题。
最佳答案
是的,您可以将 HasOne
作为 HasOneOrZero
关系起诉。
HasOne 关系可以是null
,不需要在数据库中有关系行。拿到的时候检查一下。
此外,您可能需要并喜欢新的 5.5 可选
功能。
它的工作原理是这样的:
optional($user->phone)->number;
如果你有电话,它会返回号码,但如果没有,它将是 null
而不是 Trying to get property of non-object
关于php - Laravel 是否具有一对零或一的 Eloquent 关系?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46866046/