Ajax-Controller und seine Funktionen

in  Zikula Apps , , ,

Ajax-Controller und seine Funktionen

Im Controller-Bereich der Modellierungssprache von ModuleStudio nimmt der Ajax-Controller eine besondere Rolle ein. Die Aktionen eines Ajax-Controllers werden im Gegensatz zu anderen Controllern nicht als Webseite durch den Anwender, sondern von mittels JavaScript initiierten Ajax-Requests aufgerufen.

Der Generator erzeugt unter Umständen einige zusätzliche Methoden im Ajax Controller, wenn diese für bestimmte generierte Funktionalitäten erforderlich sind. Dies betrifft unter anderem die im Folgenden aufgelisteten Methoden:

getCommonUsersList
Diese Methode sucht eine Liste von Benutzernamen, die zu einem gegebenen Suchausdruck passen, und liefert diese aufbereitet für AutoCompletion zurück. Wird nur generiert, falls in der Anwendung mindestens eine Entität mit einem Benutzerfeld existiert. Zusätzlich wird je Benutzerfeld eine weitere Methode generiert, zum Beispiel getArticleCreatorUsers, damit sich die Funktion einfach für bestimmte Felder überschreiben oder anpassen lässt.
getItemListFinder
Wird nur generiert, wenn auch der External-Controller und die Finder-Komponente generiert werden, was durch eine Generator-Einstellung gesteuert werden kann. Zweck der Methode ist es, eine Liste von Entitäten für den Finder aufzubereiten und zurückzuliefern. Mit der Finder-Komponente können Entitäten gefunden und ausgewählt werden, zum Beispiel bei der Verwendung der generierten Scribite-Plugins.
getItemListAutoCompletion
Sucht nach Entitäten, die zu einem gegebenen Suchausdruck passen, und liefert diese aufbereitet für AutoCompletion zurück. Wird nur generiert, wenn es mindestens eine Join-Relation im Modell gibt. Verwendet wird diese Methode von den AutoComplete-Feldern in den Änderungsformularen.
checkForDuplicate
Prüft, ob ein bestimmter Feldwert ein Duplikat ist oder nicht. Wird nur generiert, wenn unique-Felder oder unique Slugs im Anwendungsmodell verwendet werden.
toggleFlag
Diese Methode schaltet ein bestimmtes Flag einer gegebenen Entität um. Generiert wird sie nur, falls es Boolean-Felder mit aktiviertem Ajax-Toggle gibt. Auf Übersichts- und Detailseiten kann man dann per Mausklick die Werte einfach umschalten.
handleTreeOperations
Wird nur generiert, das Anwendungsmodell mindestens eine Entität mit aktivierter Baumstruktur enthält. Die Verwaltungsseite für Hierarchien benutzt diese Methoden für unterschiedliche Aktionen, die mit der Baumstruktur durchgeführt werden können: neuen Wurzelknoten anlegen, neuen Unterknoten anlegen, Knoten löschen, Knoten verschieben, Knoten verschieben nach X.

Weitere Beiträge in Kategorie Zikula Apps

Zikula 4 und ModuleStudio - Weitere Integration mit dem EasyAdminBundle
- Im letzten Beitrag wurde unter anderem dargestellt, dass Zikula 4 nun das EasyAdminBundle (EAB) integriert um das alte Admin-Interface abzulösen. Zwischenzeitlich sind die Arbeiten daran etwas …
Zikula 4 - Weiteres Ausmisten im Gange
- Getreu dem Motto Wer loslässt, hat die Hände frei wird der Zikula Core gegenwärtig ausgemistet: das Ziel ist es, wieder ein schlankes System zu schaffen, welches nicht jede Funktionalität selbst …
Zikula 4 - Fokus auf die eigenen Stärken
- Im Juli haben wir noch etwas zaghaft damit begonnen, historischen Ballast aus dem Zikula Core zu entfernen. Unter anderem wurden spezielle Themes und das Hook-System ausgesondert. Während der letzten …
Zikula 4 - Die Schlankheitskur beginnt
- Bereits vor einiger Zeit sind die Gedankengänge gereift, in welche Richtung sich der Zikula Core 4 bewegen wird. Die wohl wichtigste Änderung besteht darin, dass Zikula nicht mehr Symfony und …
Monitoring von Queues mit dem Symfony Messenger
- Der Symfony Messenger kann über unterschiedliche Transporte mit diversen Queue-Technologien eingesetzt werden, zum Beispiel AMQP, Redis, Amazon SQS oder Doctrine. Um die Messages in den Queues …