在 Laravel 4 列表方法中使用访问器修改器
Use accessor mutator's within Laravel 4 lists method
我有一个简单的修改器:
public function getFullnameAttribute($value)
{
return $this->first_name. ' ' .$this->last_name;
}
但我也有一个方法可以 returns 用于 select 输入的特定用户列表:
static function getDeliveryManagers()
{
return User::IsDeliveryManager()->lists('first_name', 'id');
}
我需要返回的数组为 ['First Name Last Name'、'id']
但是修改器不起作用,例如
return User::IsDeliveryManager()->lists('Fullname', 'id');
我发现了这个:https://github.com/laravel/framework/issues/668
Taylor 标记为已完成但我无法让它工作。使用 Laravel 4.2.
有什么帮助吗?
修改器,即使是驼峰式的,也应该以小写形式调用。
所以你应该这样称呼它:
return User::IsDeliveryManager()->lists('fullname', 'id');
您需要在 Eloquent Collection
上致电 lists()
。因此,请确保 IsDeliveryManager()
返回正确的值。如果能分享一下IsDeliveryManager()
的代码就更好了。如果它是 query scope
你需要在 lists()
.
之前调用 get()
return User::IsDeliveryManager()->get()->lists('fullname', 'id');
我有一个简单的修改器:
public function getFullnameAttribute($value)
{
return $this->first_name. ' ' .$this->last_name;
}
但我也有一个方法可以 returns 用于 select 输入的特定用户列表:
static function getDeliveryManagers()
{
return User::IsDeliveryManager()->lists('first_name', 'id');
}
我需要返回的数组为 ['First Name Last Name'、'id']
但是修改器不起作用,例如
return User::IsDeliveryManager()->lists('Fullname', 'id');
我发现了这个:https://github.com/laravel/framework/issues/668
Taylor 标记为已完成但我无法让它工作。使用 Laravel 4.2.
有什么帮助吗?
修改器,即使是驼峰式的,也应该以小写形式调用。
所以你应该这样称呼它:
return User::IsDeliveryManager()->lists('fullname', 'id');
您需要在 Eloquent Collection
上致电 lists()
。因此,请确保 IsDeliveryManager()
返回正确的值。如果能分享一下IsDeliveryManager()
的代码就更好了。如果它是 query scope
你需要在 lists()
.
get()
return User::IsDeliveryManager()->get()->lists('fullname', 'id');