Привет, я пытаюсь использовать внедрение зависимостей вне контроллера, но у меня всегда есть сообщение об ошибке, в котором говорится: Слишком мало аргументов для функции (...), 0 передано (...) и ровно 1 ожидается.
Вот мой код:
<?php
namespace App\Response;
use Psr\Log\LoggerInterface;
class TestResponse
{
public function __construct(private LoggerInterface $logger)
{}
}
Обычно с автопроводкой должно работать, а тут нет... я не понимаю почему
я пытаюсь внедрить зависимость как параметр, как в контроллерах, но это не работает Автопроводка включена Я думаю, что это изначально возможно, как в контроллерах, без добавления нового пакета для этого.
Помогите мне 🤓






Я нашел решение! я пишу здесь, чтобы помочь с той же проблемой
До того, как мой контроллер стал таким: этот блок вызывает ошибку, о которой я говорил раньше
#[Route('/test', name: 'test', methods: ['GET'])]
public function test(): JsonResponse
{
$response = new TestResponse();
return new JsonResponse([]);
}
Я забыл, как реализовать сервис: это хороший способ реализовать это
#[Route('/test', name: 'test', methods: ['GET'])]
public function test(TestResponse $response): JsonResponse
{
// $response->...
return new JsonResponse([]);
}