170 похожих чатов

Всем привет, столкнулся тут с проблемкой по psalm use App\Models\Logs; ... $logs =

Logs::query()->with('company')->get();

$errorsArray = $logs
->map(static function (Logs $log): string {
$logList = implode(', ', [
$log->company->code,
$log->company->full_name,
$log->message,
]);

$log->delete();

return $logList;
});

при запуске psalm (error_level=6) возникает проблема

InvalidTemplateParam - app/Console/Commands/SendAutoCommissionErrorsToManagerCommand.php:26:24 - Extended template param TModel of Illuminate\Database\Eloquent\Collection<int, non-empty-string>&static expects type Illuminate\Database\Eloquent\Model, type non-empty-string given

может кто знает с чем это связано, может кто сталкивался или знает? Спасибо

15 ответов

102 просмотра

Стикер

а в vendor psalm должен залазить?

Rinat-V Автор вопроса

Это у коллекции такой стоит, которая возвращается от Logs::query()->get()

Rinat V
Это у коллекции такой стоит, которая возвращается ...

это можно поменять на Logs::all() будет тоже самое)

Rinat-V Автор вопроса
FFx0001
это можно поменять на Logs::all() будет тоже самое...

в этом случае all не сработает Logs::query()->with('company')->get();

Rinat-V Автор вопроса
Egor Gruzdev
а в vendor psalm должен залазить?

ну вроде бы да, чтобы зависимости и типы аргументов простроить

Rinat V
в этом случае all не сработает Logs::query()->with...

ну уже от логики связи зависит это все еще безсловный запрос с подтягиванием связи на компанию а если связи нет то добавит company = null

Rinat V
в этом случае all не сработает Logs::query()->with...

where нужен если ты хочешь фильтрацию по конкретным компаниям или по не пустым

а еще без лимитов и пагинации он тебе на каждую запись в бд будет создавать суб запрос от чего очень скоропостижно упадет бд при большой вборке

Rinat-V Автор вопроса
FFx0001
а еще без лимитов и пагинации он тебе на каждую за...

соглашусь, но проблему с psalm это не решает (

Rinat V
соглашусь, но проблему с psalm это не решает (

какая с ним проблема - если верно понял это статический анализатор кода - очевидно ему нужен вендор

Rinat-V Автор вопроса
FFx0001
какая с ним проблема - если верно понял это статич...

При анализе кода use App\Models\Logs; ... $logs = Logs::query()->with('company')->get(); $errorsArray = $logs ->map(static function (Logs $log): string { $logList = implode(', ', [ $log->company->code, $log->company->full_name, $log->message, ]); $log->delete(); return $logList; }); psalm возвращает ошибку InvalidTemplateParam - app/Console/Commands/SendAutoCommissionErrorsToManagerCommand.php:26:24 - Extended template param TModel of Illuminate\Database\Eloquent\Collection<int, non-empty-string>&static expects type Illuminate\Database\Eloquent\Model, type non-empty-string given в этом проблема

Rinat V
При анализе кода use App\Models\Logs; ... $logs...

проблема не в пакете а в твоем коде

Rinat V
При анализе кода use App\Models\Logs; ... $logs...

static function (Logs $log): string замени на static function (Logs $log): Logs

Rinat-V Автор вопроса
FFx0001
static function (Logs $log): string замени на sta...

а мне надо, чтобы он возвращал коллекцию строк

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
1
Он в одиночку это дело запилил или была какая-то команда?
Aquinary
12
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Всем привет, нужна как никогда, нужна помощь с IO в загрузчике. Пишу в code16 после установки сегментных регистров, пишу вывод символа. Пробовал 2 варианта: # 1 mov $0x0E, %a...
Shadow Akira
14
Карта сайта