Hallo an alle,
ich würde gerne den Contao\Automator in meinem Bundle verwenden und habe diesbezüglich Probleme.
Bei meinem ersten Versuch wollte ich ihn wiefolgt einbinden:
PHP-Code:
namespace Agonyz\SkeletonBundle\EventListener;
use Contao\Automator;
class GenerateXmlFilesListener
{
private $_automator;
public function __construct(Automator $automator)
{
$this->_automator = $automator;
}
public function __invoke(): void
{
$this->_automator->purgeXmlFiles();
die();
}
}
War mir als Fehler gibt, dass ich meinem Constructor ein Argument zu wenig übergebe (Er erwartet eines und bekommt keines).
Beim zweiten Versuch habe ich mich an dem News/Calendar Bundle orientiert.
Dort wird es so gelöst:
PHP-Code:
$this->import(Automator::class, 'Automator');
Leider erhalte ich hier die Fehlermeldung, dass es die Funktion "import" nicht kennt.
Ich nehme an, dass das mit dem "extends Frontend" zu tun hat.
Zwei Fragen:
1. Wieso kann ich den Automator nicht über Dependency-Injection einbinden?
2. Wie bekomme ich ihn in meinem eigenen Bundle zum laufen ohne zu extenden?
Vielen Dank und freundliche Grüße von einem (noch) Anfänger
Lesezeichen