【问题标题】:sum() on a relations relation in Laravel 4sum() 关于 Laravel 4 中的关系关系
【发布时间】:2016-02-12 17:12:31
【问题描述】:

我想用 Eloquent ORM 对人员得分求和。我如何在 Laravel 4 中通过这些关系做到这一点?

在我看来,我会做类似的事情,但在使用一对多关系时这是不可能的。

$person->attributes()->values()->scores()->sum("score");

谢谢!

【问题讨论】:

  • 嗨!对不起,我可能没有帮助,但我很好奇,为什么不可能?在我看来,如果您在模型上正确定义了关系,它应该可以工作。
  • 嗨@StasMakarov! :) 因为我的关系是一对多的。

标签: laravel laravel-4 orm eloquent relation


【解决方案1】:

不要使用急切加载,它很慢。加入 Person::with(['attributes.values.scores']); 为什么分数有很多人? 在分数后使用 foreach 或自定义查询

【讨论】:

  • 当你做 attributes.values.scores 时,Laravel 会自动为你做前 2 个关系 :)
猜你喜欢
  • 2013-08-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-06-30
  • 1970-01-01
  • 2020-02-22
  • 2014-10-15
  • 2015-01-01
相关资源
最近更新 更多