Let's say I have the following fields in my database for a user, id, first_name and last_name. I want to generate a select menu, something like below:
<select>
<option value="id">first_name + last_name</option>
</select>
I know I can use pluck to get an array with id as the key and one more field as the value:
User::pluck('first_name', 'id')->all();
And this would produce:
array:4 [▼
1 => "John"
2 => "Linda"
3 => "Jane"
4 => "Carl"
]
Is there an easy way using eloquent to get the first_name AND the last_name so I can get the following:
array:4 [▼
1 => "John Doe"
2 => "Linda Smith"
3 => "Jane Doe"
4 => "Carl Johnson"
]
The first_name and last_name are examples to explain my question, I need to combine two other fields instead which cannot be 'merged' into one field.
Best way to do this is to append the model attribute on fly get full name.
In Model
In Controller
If you are using Laravel latest version, follow this as well https://laravel.com/docs/9.x/eloquent-serialization#appending-values-to-json