追加自定义属性 optionally/manually?
Append custom attribute optionally/manually?
在文档中遵循以下内容:
https://laravel.com/docs/5.3/eloquent-serialization#appending-values-to-json
class User extends Model
{
protected $appends = ['is_admin'];
public function getIsAdminAttribute()
{
return $this->attributes['admin'] == 'yes';
}
}
是否可以在查询中手动附加我的自定义属性?
在某些情况下,我不需要在我的 JSON 中包含此信息,我宁愿能够在查询中手动附加自定义属性,例如:
$users = User::append('is_admin')
->get();
这显然行不通,但我想知道是否有办法做到这一点。
这应该与 makeVisible
方法一起使用,只要定义了访问器或值在 table.
中
$users = User::all()->makeVisible('is_admin')->toArray();
有关该方法的更多信息可以在链接段落正上方的文档中找到。
在文档中遵循以下内容:
https://laravel.com/docs/5.3/eloquent-serialization#appending-values-to-json
class User extends Model
{
protected $appends = ['is_admin'];
public function getIsAdminAttribute()
{
return $this->attributes['admin'] == 'yes';
}
}
是否可以在查询中手动附加我的自定义属性?
在某些情况下,我不需要在我的 JSON 中包含此信息,我宁愿能够在查询中手动附加自定义属性,例如:
$users = User::append('is_admin')
->get();
这显然行不通,但我想知道是否有办法做到这一点。
这应该与 makeVisible
方法一起使用,只要定义了访问器或值在 table.
$users = User::all()->makeVisible('is_admin')->toArray();
有关该方法的更多信息可以在链接段落正上方的文档中找到。