如果为True,则Laravel @会隐藏SQL中的刀片视图记录

时间:2018-01-25 20:56:55

标签: php laravel laravel-5

我无法理解,如果一个或多个的状态是XXX,如何隐藏/不显示来自SQL的记录

示例:

我有一个名为 - projects的SQL表,一个项目有状态 - 已关闭。

我的刀片视图将显示此项目以及具有状态的项目 - OPEN

如果项目已关闭,我如何隐藏?

THankx

1 个答案:

答案 0 :(得分:1)

如果要排除状态为已关闭的所有项目,可以在控制器中返回已过滤的集合:

$projects = Project::where('status', '<>', 'closed')->get();

更好的是,在Project模型上创建一个本地范围:

public function scopeOpen($query) {
    return $query->where('status', 'open');
}

然后再使用它:

$projects = Project::open();