我正在努力显示用户可以引用的访问权限表。
我有一张这样的 table
--------------------------------------------------------------
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 | |
如何删除不需要的字段?
这是我当前在 Controller 上的代码
public function create() {
$userGrid = DB::table('user_permissions_grid')
->where('status', 'active')
->orderBy('header', 'asc')
->orderBy('module', 'asc')
->orderBy('submodule', 'asc')
->get();
}
然后在 View 上
<table class="table">
<th>Header</th>
<th>Module/th>
<th>Submodule</th>
<th>Add</th>
<th>Edit</th>
<th>Delete</th>
<th>View</th>
<tbody>
@foreach($userGrid as $row)
<tr>
<td>{{ $row->header }}</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<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>
@if($row->submodule)
<tr>
<td></td>
<td></td>
<td>{{ $row->submodule }}</td>
<td>{{ $row->add }}</td>
<td>{{ $row->edit }}</td>
<td>{{ $row->view }}</td>
<td>{{ $row->delete }}</td>
</tr>
@endif
@endforeach
</tbody>
</table>
如何将其显示到我上面发布的所需输出?
最佳答案
查看您的代码,它准确地显示了您编码的内容!
您首先显示一行仅包含标题,然后显示一行包含模块和权限,然后查看该模块是否有子模块,如果有,则再次打印同一行,这次缺失模块并仅显示子模块。
因此,如果一行有一个模块和一个子模块,您将得到两个对应的行。
我认为代码应该是这样的:
@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
关于php - 在 View 中显示不必要的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55503626/