【发布时间】:2019-01-10 11:01:31
【问题描述】:
我需要显示模型Foo 的price 列的总和。现在我可以做到这一点。
public function calculate(Request $request)
{
return $this
->sum($request, Contribution::class, 'contribution_amount')
->dollars();
}
显示以下输出。
-
22的总和 =>$22 -
3120的总和 =>$3.10k
我只需要显示$22、$3120 而不需要任何格式。我试图覆盖聚合函数,但它仍然没有给我正确的输出格式。
protected function aggregate($request, $model, $function, $column = null, $dateColumn = null)
{
$query = $model instanceof Builder ? $model : (new $model)->newQuery();
$column = $column ?? $query->getModel()->getQualifiedKeyName();
$previousValue = with(clone $query)->whereBetween(
$dateColumn ?? $query->getModel()->getCreatedAtColumn(), $this->previousRange($request->range)
)->{$function}($column);
return $this->result(
with(clone $query)->whereBetween(
$dateColumn ?? $query->getModel()->getCreatedAtColumn(), $this->currentRange($request->range)
)->{$function}($column)
)->previous($previousValue);
}
有人可以在这里指点一下吗?
【问题讨论】:
-
如果最后不链接
dollars()会怎样? -
我试过了。没运气。这是 3.20k
-
很奇怪。你能告诉我们你的贡献模型吗?在contribution_amount 上是否定义了任何访问器?
-
无。它只是扩展了 Eloquent 模型。没有额外的代码。甚至没有演员表。
标签: php laravel laravel-nova