如何在Laravel中从一对多关系表获取数据

时间:2019-07-04 08:31:30

标签: laravel-5

层次结构表: enter image description here

up表的down中引用了user_idusers列。假设我有以下数据:

    id  up  down
--------------------
    1   1    2
    2   1    3
    3   1    5
    4   2    4

我想在层次结构模型内关联下属:

class Hierarchy extends Model
{
     protected $attributes = [
       'status' => 1
    ];
    protected $fillable = [
        'up', 'down', 'created_at','updated_at'
    ];

    public function subordinates(){
     return $this->hasMany('App\User', 'id', 'down');
    }
}

现在,我想让所有用户都进入hierarchies.up = 1。对于以上数据,我将获得user_id(down)= 2,3,5的用户信息。我正在尝试如下:

$loggedInUserId = Auth::user()->id;
     $subordinate=Hierarchy::where('up',$loggedInUserId)->subordinates()->get()->toArray();//subordinates()->get()->toArray();
     echo "<pre>";
     print_r($subordinate);
     echo "</pre>";
     return view('goal.create')->with('data',$subordinate);

但是在此上下文中未定义从属方法。我的方法有什么问题?

0 个答案:

没有答案