我是否可以限制Eloquent模型在Laravel中返回受保护的属性?

时间:2016-01-30 22:40:57

标签: laravel laravel-5 eloquent

是否有一种简单的方法可以不为一个雄辩的模型返回受保护的属性?

我想返回一个User并在前端构建一个类似的User对象。但是,我不想返回用户密码,type_id,remember_token和其他属性。有一种简单的方法可以限制应用程序返回这些属性吗?我知道我可以编写一个只返回我想要的值的方法或属性,但我想知道是否有针对eloquent或集合的unguarded()函数。

如果没有,你会如何推荐这样做。我可能会将其作为范围,而不是使用属性,mutator或方法。

1 个答案:

答案 0 :(得分:0)

您可以覆盖hidden属性。此数组中定义的所有字段都不会在toArray函数中呈现。

您的模特课程:

protected $hidden = ['_token', 'type_id', ...];