Lov*_*ock 2 laravel jquery-select2 eloquent laravel-5
将select2与Laravel/Vue项目一起使用,需要以下列格式返回JSON:
[
{ id: 0, text: 'enhancement' },
{ id: 1, text: 'bug' }
]
Run Code Online (Sandbox Code Playgroud)
在Laravel我知道我可以使用pluck来创建我的列表数据,例如为客户:
$customers = Customer::pluck('id', 'first_name');
Run Code Online (Sandbox Code Playgroud)
但是想要将id和名字+姓氏作为单个名称返回.
我怎样才能做到这一点?
dev*_*ev7 12
你尝试过使用Accessors吗?
https://laravel.com/docs/5.4/eloquent-mutators#defining-an-accessor
我没有测试过,但这可行:
将此添加到您的客户口才模型中:
public function getFullNameAttribute($value)
{
return ucfirst($this->first_name) . ' ' . ucfirst($this->last_name);
}
Run Code Online (Sandbox Code Playgroud)
然后尝试:
UPDATED pluck on accessor仅适用于集合.如果您尝试Customer::pluck('id', 'full_name')它将无法工作,因为没有名为full_name的db列,因此您必须使用Customer::all()->pluck('id', 'full_name')
$customers = Customer::all()->pluck('id', 'full_name');
Run Code Online (Sandbox Code Playgroud)
Customer::all(['id', 'first_name', 'last_name'])->pluck(...)以便我们不从db中提取不必要的列.希望这可以帮助.
| 归档时间: |
|
| 查看次数: |
7261 次 |
| 最近记录: |