有没有一种方法可以在Laravel中检索一个模型的所有属性,即使它们为null也是如此?它似乎只返回那些不为null的属性。
原因是我有一个函数,它将更新模型属性从一个数组中,如果该属性存在于模型中。我使用property_exists()函数来检查模型是否具有特定属性,然后设置它。预期数组键和模型属性匹配,所以它的工作方式就是这样。
如果模型已经设置了属性,它会正常工作,因为属性存在并从数组中获取值。但是如果属性先前为null,则不会更新或设置任何内容,因为它无法通过property_exists() 检查。
最终发生的是,我有一个属性的单个数组,然后可能有两个模型。我运行我的setter函数,传递属性数组和每个对象分别调用。如果模型具有匹配的属性,则它将被更新。
->nullable()
附加到字段。您无需编写新方法或在模型中设置它。话虽如此,这两个都不应该是必要的。 - tam5$user = new User; $user->getAttributes();
这样的东西将不会返回属性,因为它没有设置。 - Thomas Kimnew User;
,我会更新我的答案以在这种情况下与你不同。 - tam5