Я пытаюсь получить аргумент в моем services.yaml для моего ImageManager.php, но он не работает, и я не могу решить эту ошибку.
вот ошибка:
Ошибка типа: слишком мало аргументов для функции App \ Manager \ ImageManager :: __ construct (), 0 передано в C: \ wamp64 \ www \ SymfonyAPI \ var \ cache \ dev \ ContainerZxFSS5S \ getImageManagerService.php в строке 14 и ожидается ровно 1
services.yaml
parameters:
images_directory: '%kernel.project_dir%/public/uploads/images/'
...
services:
_defaults:
autowire: false
autoconfigure: false
public: true
App\Manager\ImageManager:
arguments:
$targetDir: '%images_directory%'
если для автонастройки и автоконфигурации я верю, что у меня есть эта ошибка:
RuntimeException Не удается выполнить автоматическое подключение службы «App \ Manager \ ImageManager»: аргумент «$ targetDir» метода «__construct ()» имеет тип «App \ Manager \ targetDir», но этот класс не найден.
ImageManager.php
private $targetDir;
public function __construct(targetDir $targetDir)
{
$this->targetDir = $targetDir;
}
Полный services.yml
parameters:
liip_imagine.mozjpeg.binary: /mozjpeg/cjpeg.exe
images_directory: '%kernel.project_dir%/public/uploads/images/'
mozjpg_directory: '%kernel.project_dir%/mozjpg'
locale: 'en'
services:
_defaults:
autowire: false
autoconfigure: false
public: true
App\Manager\ImageManager:
arguments:
$targetDir: '%images_directory%'
App\EventListener\ImageUploadListener:
tags:
- { name: doctrine.event_listener, event: prePersist }
- { name: doctrine.event_listener, event: preUpdate }
App\:
resource: '../src/*'
exclude: '../src/{Entity,Migrations,Tests,Kernel.php}'
App\Controller\:
resource: '../src/Controller'
tags: ['controller.service_arguments']
app.post_processor.my_custom_post_processor:
class: '%kernel.project_dir%/src/Controller/ImageController.php'
tags:
- { name: 'liip_imagine.filter.post_processor', post_processor: 'mozjpeg' }