微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在laravel中将第一个循环分配给第二个循环等等?

如何解决如何在laravel中将第一个循环分配给第二个循环等等?

我有一个表权限,它具有权限名称、类型、实体,我喜欢在创建角色时在表中显示

enter image description here

我通过三个变量从一个类权限的控制器创建一个页面

    $types=Permission::select('type')->groupBy('type')->get();
    $entities=Permission::select('entity')->groupBy('entity')->get();
    $permission=Permission::select('id','name')->get();

现在如果Type=Admin如何显示下面的,只显示下面的Entity和权限。 这是权限模型

    class Permission extends Model
{
    use HasFactory,Uuids;
 protected $fillable = ['id','name','type','entity'];
      public function roles()
    {
        return $this->belongsToMany(Role::class,'permission_role');
    }
     
}

谢谢

解决方法

你需要relationships

您的模型:

class Type extends Model
{
    public function entities()
    {
        return $this->hasMany(Entity::class);
    }
}
class Entity extends Model
{
    public function permissions()
    {
        return $this->hasMany(Permission::class);
    }
}

您的刀片视图:

<table>
    @foreach($types as $type)
        <tr>
            <th colspan="6">{{ $type->type }}</th>
        </tr>
        @foreach($type->entities as $entity)
            <tr>
                <th>{{ $entity->entity }}</th>
                @foreach($entity->permissions as $permission)
                    <td>{{ $permission->name }}</td>
                @endforeach
            </tr>
        @endforeach
    @endforeach
</table>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。