#php #laravel #laravel-nova
#php #laravel #laravel-nova
Вопрос:
Итак, я пытаюсь добавить новую тенденцию показателей к ресурсу, но всегда получаю следующую ошибку:
Too few arguments to function LaravelNovaResource::__construct(), 0 passed in /crm/nova/src/Metrics/Trend.php on line 116 and exactly 1 expected {"userId":1,"exception":"[object] (Symfony\Component\Debug\Exception\FatalThrowableError(code: 0): Too few arguments to function Laravel\Nova\Resource::__construct(), 0 passed in crm/nova/src/Metrics/Trend.php on line 116 and exactly 1 expected at /crm/nova/src/Resource.php:108)
Я пытаюсь получить данные из столбца «ph_value» в таблице базы данных «отчеты».
<?php
namespace AppNovaMetrics;
use IlluminateHttpRequest;
use LaravelNovaMetricsTrend;
use AppNovaReport;
class ph extends Trend
{
/**
* Calculate the value of the metric.
*
* @param IlluminateHttpRequest $request
* @return mixed
*/
public function calculate(Request $request)
{
return $this->countByDays($request, Report::class, 'ph_value');
}
/**
* Get the ranges available for the metric.
*
* @return array
*/
public function ranges()
{
return [
30 => '30 Days',
60 => '60 Days',
90 => '90 Days',
];
}
/**
* Determine for how many minutes the metric should be cached.
*
* @return DateTimeInterface|DateInterval|float|int
*/
public function cacheFor()
{
// return now()->addMinutes(5);
}
/**
* Get the URI key for the metric.
*
* @return string
*/
public function uriKey()
{
return 'ph';
}
}
Карта, конечно, включена.
public function cards(Request $request)
{
return [
new MetricsPh,
];
}
Метрика тренда просто постоянно загружается, как будто она недоступна для извлечения данных.
Ответ №1:
countByDays
второй параметр функции — это model
класс, а не resource
класс Nova.
Обновите следующую инструкцию use use AppNovaReport
до use AppReport
Ответ №2:
У меня такая же проблема, просто измените use App Nova Report; на use App Report; и все будет хорошо. Предложение от php storm такое странное xD
Комментарии:
1. Спасибо за вклад — пожалуйста, попробуйте отформатировать свой код и избегайте личных мнений