Eigenes ContentElement nach Anleitung in Doku funktioniert nicht
Hallo zusammen,
erstmal allseits ein gutes neues Jahr :D
Ich habe heute mal versucht nach der neuen Doku unter https://docs.contao.org/dev/framework/content-elements/ ein eigene Content Element zu definieren. Das klappt aber leider nicht.
In der o.g. Doku wird es so beschrieben, als ob das Erstellen eines Content-Elements lediglich über den Eintrag in der dca/tl_content definiert werden kann bzw. der Rest eben über die Annotation in der Controller Klasse. Wenn ich das nach Anleitung umsetze, kann ich das Element im Backend aber nicht auswählen. Das Element sollte ja eigentlich in der Kategorie "texts" sichtbar sein. Da ist aber nichts drin.
Wenn ich jetzt "alt hergebracht" in der config/config.php das Element registriere, dann sehe ich es in der Auswahl der Elementliste. Wenn das Element auswähle und danach den Dialog speicher, dann erhalte ich eine entsprechende Fehlermeldung:
Code:
Attempted to call an undefined method named "generate" of class "App\Controller\ContentElement\MyContentElementController".
Also irgendwie scheint Contao da die "alte" Funktion generate zu suchen. Ich bringe jetzt also wohl ein paar Dinge durcheinander :cool: Hat mir da jemand eine Hilfestellung?
Vielen Dank schon mal im Voraus...
undefined method named "generate"
Mir ist leider immer noch nicht ganz klar, wie ich nach der neuen Variante ein FrontendModule entwickeln kann/muss.
ich erhalte immer den Fehler: Attempted to call an undefined method named "generate" of class "App\Controller\FrontendModule\ExhibitorListContro ller
Laut der Doku sollte das doch aber genau so funktionieren, oder?
https://docs.contao.org/dev/framewor...t-end-modules/
PHP-Code:
<?php
namespace App\Controller\FrontendModule;
use Contao\CoreBundle\Controller\FrontendModule\AbstractFrontendModuleController;
use Contao\CoreBundle\ServiceAnnotation\FrontendModule;
use Contao\ModuleModel;
use Contao\Template;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
/**
* @FrontendModule(
* "exhibitor_list",
* category="miscellaneous",
* template="mod_exhibitor_list",
* )
*/
class ExhibitorListController extends AbstractFrontendModuleController
{
protected function getResponse(Template $template, ModuleModel $model, Request $request): ?Response
{
return $template->getResponse();
}
}
Eigenes ContentElement nach Anleitung in Doku funktioniert nicht
autoload Abschnitt in der composer.json hinzugefügt?
Edit: „Autokorrektur-Typo“ beseitigt