我正在显示用户可以参考的访问表。
我有一个这样的桌子
{
"took": 2,
"timed_out": false,
"_shards": {
"total": 5,
"successful": 5,
"skipped": 0,
"failed": 0
},
"hits": {
"total": 920,
"max_score": 0,
"hits": []
},
"aggregations": {
"consideration": {
"doc_count": 486,
"gross": {
"value": 4492767
}
}
}
}
我要寻找的输出是这个
--------------------------------------------------------------
id | header | module | submodule | add | edit | view | delete
--------------------------------------------------------------
1 | users | client | | Y | Y | Y | Y
2 | users | client | Active | Y | Y | Y | Y
3 | users | client | Inactive | Y | Y | Y |
4 | users | client | Pending | Y | Y | |
但是我得到的输出是这个
Header | Module | Submodule | Add | Edit | View | Delete
users | | | | | |
| client | | Y | Y | Y | Y
| client | Active | Y | Y | Y | Y
| client | Inactive | Y | Y | Y |
| client | Pending | Y | Y | |
如何删除不必要的字段?
这是我当前在控制器上的代码
Header | Module | Submodule | Add | Edit | View | Delete
users | | | | | |
| client | | Y | Y | Y | Y
| client | Active | Y | Y | Y | Y
| client | | Y | Y | Y |
| client | Inactive | Y | Y | Y |
| client | | Y | Y | |
| client | Pending | Y | Y | |
然后在视图上
public function create() {
$userGrid = DB::table('user_permissions_grid')
->where('status', 'active')
->orderBy('header', 'asc')
->orderBy('module', 'asc')
->orderBy('submodule', 'asc')
->get();
}
如何将其显示为上面发布的所需输出?
答案 0 :(得分:0)
查看您的代码,它会精确显示您的编码!
您首先显示的是仅显示标题的行,然后显示包含模块和权限的行,然后再查看该模块是否具有子模块,如果是,则再次打印同一行,这次丢失了模块,仅显示子模块。
因此,如果一行中有一个模块和一个子模块,您将获得两个相应的行。
我认为代码应类似于:
@if($row->submodule)
<tr>
<td></td>
<td>{{ $row->module }}</td>
<td>{{ $row->submodule }}</td>
<td>{{ $row->add }}</td>
<td>{{ $row->edit }}</td>
<td>{{ $row->view }}</td>
<td>{{ $row->delete }}</td>
</tr>
@else
<tr>
<td></td>
<td>{{ $row->module }}</td>
<td></td>
<td>{{ $row->add }}</td>
<td>{{ $row->edit }}</td>
<td>{{ $row->view }}</td>
<td>{{ $row->delete }}</td>
</tr>
@endif