首页 > 解决方案 > 通过中间表检索值

问题描述

我的模型有一个多对多的关系User

    public function department(){
        return $this->belongsToMany(Department::class, UserInfo::class)
            ->withPivot('id');
    }

    public function access_level(){
        return $this->belongsToMany(AccessLevels::class, UserInfo::class)
            ->withPivot('id');
    }

我想在我的视图中同时获得两个值。我试过循环department模型并手动获取access_level模型,如下所示:

@foreach($this->user->department()->get() as $department)
    <div>
        <div class="text-teal-600">
           {{$department->dept_name} ({{$department->dept_short_name}})
        </div>
        <div class="text-gray-500 text-xs">
           {{$this->user->access_level[$loop->index]->level_name}}                                        
           - {{$this->user->access_level[$loop->index]->access_level}}
       </div>
    </div>
@endforeach

我得到了一个Undefined offset: 2例外。无论如何都可以在不使用手动访问第二个模型的情况下执行此操作$loop->index

标签: phplaravellaravel-livewire

解决方案


推荐阅读