почему этот показатель в новой метрике не работает? - PullRequest
0 голосов
/ 04 января 2019

Если я посчитаю свою модель User :: class, метрика работает, но когда я изменяю это на другую модель, метрика показывает

"0 Нет данных"

<?php


namespace App\Nova\Metrics;

use App\Kunde;
use Illuminate\Http\Request;
use Laravel\Nova\Metrics\Value;

class TotalKunden extends Value
{

/**
  * Calculate the value of the metric.
  *
 *
public function calculate()
{
return $this->result(Kunde::count());
}
 *
  *@param \Illuminate\Http\Request $request
  *@return mixed
  */

  public function calculate(Request $request)
  {
      return $this->count($request, Kunde::class);
  }




/**
* Get the ranges available for the metric.
**/

public function ranges()
{
    return [
        30 => '30 Tage',
        60 => '60 Tage',
        365 => '1 Jahr',
        'MTD' => 'Seit Monatsbeginn',
        'QTD' => 'Seit Quartalbeginn',
        'YTD' => 'Seit Jahresanfang',

    ];
}

}   

моя модель указана в ресурсе

с:

    public static $model = 'App\Kunde';

и в логах нет ошибок

только это работает,

 public function calculate()
{
return $this->result(Kunde::count());
}

но тогда диапазоны не работают.

1 Ответ

0 голосов
/ 04 января 2019

возможно у кого-то такая же проблема .. поэтому ответ:

запрос метрики ищет столбец созданного_бД в БД, поэтому он должен иметь дату

запрос метрики выглядит следующим образом ..

SELECT count(`id`) as aggregate FROM `Objects` WHERE `created_at` between '2018-11-05         12:51:22' and '2018-12-05 12:51:22' and `Objects`.`deleted_at` IS NULL

:)

...