Laravel是否有一对零或一个雄辩的关系?

Ada*_*dam 2 php mysql laravel-5

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

示例:文档中,描述了用户和电话之间的HasOne关系。如果每个用户拥有01个电话,是否可以使用这种方式?还是我需要拥有一个OneToMany关系才能同时允许0

我不知道,如果一个HasOne关系也许如果我把它作为一个引起任何问题HasOneOrZero关系。

小智 7

不,HasOne关系可以是null,数据库中不需要有关系行。拿到它时就检查一下。

您可能还需要和喜欢新的5.5 optional功能。

它的工作原理如下:

optional($user->phone)->number;
Run Code Online (Sandbox Code Playgroud)

如果您有电话,它将返回号码,但如果没有,它将返回null而不是Trying to get property of non-object