小编sp1*_*p11的帖子

从相关的laravel模型中获取具有belongsToMany关系的ids数组

我有一个模型角色,属于许多用户.

Class Role {
     public $fillable = ["name"];

     public function users()
     {
          return $this->belongsToMany('App/Models/User')->select(['user_id']);
     }
}
Run Code Online (Sandbox Code Playgroud)

当我在Role中检索使用查询的用户时.我希望它只返回user_ids数组

 Role::with("users")->get();
Run Code Online (Sandbox Code Playgroud)

它应该返回以下输出

 [ 
   {
     "name": "Role1",
     "users" : [1,2,3]
   },
   {
     "name": "Role2",
     "users" : [1,2,3]
   }
 ]
Run Code Online (Sandbox Code Playgroud)

目前它提供以下输出

[ 
   {
     "name": "Role1",
     "users" : [
        {
           user_id : 1
        },
        {
           user_id : 2
        },

        {
           user_id : 3
        }
   },
   {
     "name": "Role2",
     "users" : [
        {
           user_id : 1
        },
        {
           user_id : 2
        },

        {
           user_id : 3
        } …
Run Code Online (Sandbox Code Playgroud)

php mysql relationship laravel eloquent

18
推荐指数
1
解决办法
2万
查看次数

标签 统计

eloquent ×1

laravel ×1

mysql ×1

php ×1

relationship ×1