当记录存储在模型中时,也可以使用
我有一个名为status
的列的users表。在本专栏中,我只存储了一个数字,基于它们的状态,1-admin,2-owner等。我知道我可以用{{ users->status }}
显示这些值,但只显示存储的数字。如何显示实际姓名而不是存储的号码?
使用Eloquent访问者&突变体。
定义一个状态数组,并使用数据库中的状态号作为键来更改模型中的值,以便在视图中{{ $users->status }}
等于admin
class User extends Eloquent {
protected $statuses = array(
'1' => 'admin',
'2' => 'owner'
);
public function getStatusAttribute($value)
{
return $this->statuses[$value];
}
}
getStatusAttribute
在检索记录时将1
转换为admin
当记录存储在模型中时,也可以使用
set
方法。在视图中{{ $user->status }} // echos 'admin'