gpt4 book ai didi

php - Laravel 高阶消息意外结果

转载 作者:行者123 更新时间:2023-12-05 00:45:09 26 4
gpt4 key购买 nike

我有一个 higher order message在拉拉维尔。看起来像
这个:

$category->scores->each->ratings->where('result.rating', '>=', 3)->count();

A categoryscores scoreratings和一个 rating有一个 result .

我想获得每个 的评分总数类别 where >= 3 .

使用我现在拥有的代码,最终结果始终为 0。

但是当我像这样循环时:
@foreach($categories as $category)
@foreach($category->scores as $score)
@foreach($score->ratings->where('result.rating', '>=', 3) as $rating)
{{ $rating->result->result_nl }}
@endforeach
@endforeach
@endforeach

有3个评分结果。

我的高阶消息有什么问题?

最佳答案

您的问题中有一些对高阶函数的误解。在文档和 Laravel 中实现他们使用方法调用。
在这里,您正在尝试做一个 sum在 each 调用中, each 不返回任何内容,而是一个 Collection替代 foreach 的方法.
如果将以下函数添加到评分模型中。

public function ratingsOverTree()
{
return $this->ratings->where('result.rating', '>=', 3)->count();
}
您可以使用 sum将结果相加的方法,使用 ratingsOverTree()方法。
$category->scores->sum->ratingsOverTree();

关于php - Laravel 高阶消息意外结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58393170/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com