Это пользователя модель:получить множество ролей идентификатора пользователя в Laravel
class User extends Model
{
/**
* The roles that belong to the user.
*/
public function roles()
{
return $this->belongsToMany('App\Role');
}
}
И это Роль Модель:
class Role extends Model
{
/**
* The users that belong to the role.
*/
public function users()
{
return $this->belongsToMany('App\User');
}
}
Как вы можете видеть, что эти две модели имеют От многих до многих отношений между ними.
Теперь я хочу получить массив ID's ролей пользователя. Для этого я написал:
$user = User::find($id);
return $user->roles()->get(['roles.role_id']);
Но выше код возвращает массив, содержащий объекты Отсносящийся для каждой роли идентификатора, который пользователь должен:
[
{
"role_id": 9,
"pivot": {
"user_id": 2,
"role_id": 9
}
},
{
"role_id": 14,
"pivot": {
"user_id": 2,
"role_id": 14
}
}
]
Но я хочу, чтобы вернуть массив идентификаторов ролей, как это :
[9,14,......]
Как я могу это сделать?
может быть петлей над объектом, чтобы получить только 'role_id'? – Noman