从 Laravel 4 的表格中隐藏特定用户的最佳方法是啥?
Posted
技术标签:
【中文标题】从 Laravel 4 的表格中隐藏特定用户的最佳方法是啥?【英文标题】:What is the best way to hide a specific user from a table in Laravel 4 ?从 Laravel 4 的表格中隐藏特定用户的最佳方法是什么? 【发布时间】:2015-01-18 17:06:38 【问题描述】:我想知道从表格中隐藏特定用户的最佳方法?
就我而言,我想隐藏不再活跃的用户。
控制器中的查询
$users = User::where('id', '!=', '#id of disabled user')->get();
查看
@foreach ($users as $user)
// print the table
@endforeach
我离得很近吗?
【问题讨论】:
想想第二个用户,它会在某一刻变得不活跃...使用not in
sql语句应该更好..User::select(..)->whereNotIn('id', [1])
你添加的图片让我有点困惑。你说的隐藏是什么意思?根本不显示或以不同的样式显示(在图像中显示为灰色)?
你定义什么是活跃的?您可以使用软删除来“删除”用户(实际上不是从数据库中删除,而是设置deleted_at
标志)。然后当你说User::all()
时,只会出现未删除的用户。您可以随时使用withTrash()
或onlyTrash()
查看已删除的用户,也可以使用restore()
取消删除。
当然。我可以定义主动。在我的数据库中,在用户表中,活动是用户的一个属性。我设置 active = 0(待处理)、active = 1(活动)和 active = 2(禁用)。我想隐藏所有 active = 2 的用户。我希望这足够精确。
【参考方案1】:
只是一个“正常”的 where 语句
$users = User::where('active', '!=', 2)->get();
【讨论】:
这是唯一的方法吗? 不,当然不是。但从我对您的应用程序的了解来看,这似乎是最好的。你有什么不喜欢的吗?以上是关于从 Laravel 4 的表格中隐藏特定用户的最佳方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章
laravel 刀片 - 如何隐藏特定路线的 html 元素的显示
如何在 Laravel 中仅向访客用户显示或隐藏我的表的一部分?