Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to return appended field when want to select specific column in laravel

I added a full_name field to User model like this:

protected $appends = ['full_name'];

public function getFullNameAttribute()
{
    return $this->name . ' ' . $this->family;
}

On the other hand I want to select and return specific columns along with full_name field like this:

return  User::all('user_id', 'username', 'full_name')

But laravel gets this error:

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'full_name' in 'field list' (SQL: select user_id, username, name, family, full_name from users where users.deleted_at is null)

How can I do what I want?

like image 968
A.B.Developer Avatar asked Oct 23 '25 19:10

A.B.Developer


1 Answers

I think you don't need to specify that in your select column.. it's already attached with your result set.

If you want specific columns, than you need to probably user $hidden attributes and make them visible whenever you want.

like image 196
ankit patel Avatar answered Oct 26 '25 09:10

ankit patel