php - Laravel 是否具有一对零或一的 Eloquent 关系?

标签 php mysql laravel-5

是否可以使用 Laravels HasOne关系也作为 HasOneOrZero 关系?

示例:docs HasOne 关系描述了用户和电话之间的关系。如果每个用户都有 01 电话,是否可以使用此 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/

相关文章:

php - 如何将多维数组键作为树返回?

php - 使用外键和多对一连接三个表

mysql - EasyAdmin 3.1 CrudControllers Symfony

mysql - 插入错误 - 数据不会插入

laravel-5 - 在Laravel 5的重置密码中用真实域名替换localhost

php - 在 Laravel : How do I sort children by name? 中对 child 进行排序

php - 如何使用 PHP 将 MySQL 表导出到 Excel?

php - 我想使用 php 当日期过期时向用户隐藏(数据库)记录的详细信息

mysql - 使用 laravel 连接 Mysql 服务器

mysql - 查询 JOINs 2 个模型 ON