我有一个计算机数据库,我希望它们在状态为“禁用”时隐藏,我知道软删除,但是我仍然希望管理员能够访问这些计算机,即使它们不会出现在该特定视图中,因此无法将其删除。
这是控制器功能
public function home(Request $request)
{
$user = Auth::user();
switch ($user->tipo) {
case 'admin':
$title = 'Máquinas';
$maquinas = Maquinas::all();
$admin = true;
break;
case 'cliente':
$cliente = Clientes::find($user->cliente_id);
$title = $cliente->empresa.' <i class="fa fa-arrow-right" style="font-size: 20px; color: gray"></i> Máquinas';
$maquinas = $cliente->maquinas()->get();
$admin = false;
break;
case 'base':
$cliente = Clientes::find($user->cliente_id);
$base = Bases::find($user->base_id);
$title = $cliente->empresa.' <i class="fa fa-arrow-right" style="font-size: 20px; color: gray"></i> '.$base->nome.' <i class="fa fa-arrow-right" style="font-size: 20px; color: gray"></i> Máquinas';
$maquinas = $base->maquinas()->get();
$admin = false;
break;
default:
# code...
break;
}
我想过滤案例'cliente'和案例'base'的禁用者>
我有一个计算机数据库,我希望它们在状态为“禁用”时隐藏,我知道软删除,但是我仍然希望管理员能够访问那些计算机,即使它们不会出现在...上也是如此。 >
假设您有一列状态栏,您应该可以将where
函数链接到查询中。
$maquinas = $cliente->maquinas()->where('status', '!=', 'disabled')->get();