ChronoConnectivity v6 Vorstellung

Heute möchte ich euch die (Kostenpflichtige!) Komponente ChronoConnectivity vorstellen. Mit Hilfe von ChronoConnectivity könnt Ihr im Joomla! Backend Datenbanktabellen erstellen, beschreiben und auslesen. Chrono Connectivity hat es mir erlaubt für das Projekt BAIER Lighting die All in One Angebote zu erstellen. Ich werde euch in den kommenden Wochen auf eine Reise mitnehmen. Für ein neues Projekt werde ich ChronoConnectivity v6 verwenden und euch nebenbei hoffentlich einige hilfreiche Tutorials bereitstellen können.

Einleitung

ChronoConnectivity (aktuell in der Version 6) ist eine kostenpflichtige Erweiterung von ChronoEngine (ChronoMan). Es ist eine Spielwiese für den Umgang mit Datenbanktabellen und erlaubt es euch auch komplexe Strukturen für Front und Backend zu erstellen. ChronoConnectivity ist hierbei nicht auf die eigenen DB Tabellen limitiert und kann mit allen lokalen oder auch externen Tabellen arbeiten. Es ist im wahrsten Sinne eine "Grüne Wiese" und ist, ohne viel Codingaufwand ein Instrument zur Visualisierung von Datenbankinhalten.

Backend

Nach der Installation findet Ihr im Backend unter Komponenten den Eintrag ChronoConnectivity. zu Beginn lohnt es sich via Button "Demos" einige Beispielabfragen zu laden und diese zu studieren. In jedem Beispiel werden andere Szenarien und Möglichkeiten genutzt wie die Daten ausgelesen und dargestellt werden können.
chrono 1
 

Aller Anfang ist schwer

Wir schauen uns das Beispiel List Users an

Um einen Einstieg zu finden bietet sich die List Users Demo sehr gut an. In diesem Abscnitt erkläre ich euch kurz was ich bereits herausfinden konnte und wie sich die Komponente zusammensetzt und arbeitet.

Übersicht

Nachdem wir die Demo List Users geladen haben erscheint diese unten in der Liste. Hier ein kleiner Input zur Liste, jeder Eintrag hier steht für eine "Connection" die Ihr auf eurer Seite haben möchtet. Z.B. eine Listendarstellung aller registrierten Benutzer der Webseite.
In der Übersicht sehen wir eine Tabelle der Connections mit den Spalten:
IDTitleAliasDescriptionData tablesPublicPublishedDisplay
Unique ID des Projekts Den von Dir gewünschtent Titel Den von dir gewünschten oder autom. erstellten Alias welcher in der Adresszeile erscheinen wird. Ein Beschreibungstext von Dir definiert Zunächst nur ein Icon - MouseOver zeigt dir mit welchen Datenbanktabellen dieses Projekt arbeitet (wurd automatisch erstellt) Zugriffssteuerung Freigegeben für Zugriff? Hier einfach nur ein Textlink "Show" Dieser führt dich auf eine neue Seite / Tab welche das Ergebnis / den Event INDEX zeigt. mehr dazu später.
 Wenn Du eine Demo geladen hast kannst du ja mal via SHOW Link ansehen was das Resultat ist. Ein Klick auf den Title Öffnet uns nun das Tor in die Welt von ChronoConnectivity...
 
 

Eine Connection im Detail

Nach einem Klick auf dne Namen der Connection sehen wir eine Neue Seite, hier wird uns in Tabs präsentiert was wir denn damit anstellen können.
 
General
Hier können wir (wer häts gedacht) generelle Einstellungen unserer Connection anpassen. Namen, Alias, Zugriff, Beschreibung - eigentlich alles was wir zuvor in der Übersicht gesehen haben. Doch Stopp, da ist noch mehr. Default event und Event not found. Default event definiert welches Event standardmässig beim Aufruf geladen werden soll sofern nicht anders definiert. Fragezeichen? Gut! - Es soll dir nicht anders gehen. Sehen wir uns die anderen Tabs an und wir werden verstehen.

Events

Unsere List Users Demo hat drei Events definiert: index,view,edit. Das ganze wird nun bereits etwas klarer. Jeder Event hat rechts einen Contentbereich - hier kann man seinen Content platzieren und mit den Variablen der Connection arbeiten. Im Beispiel sehen wir in der index aktuell: {fn:read_users} {view:users_Table}. Aha! äh...

Views

Die Views - hier finden wir dieses users_Table wieder - Aha!
Views bereiten den Inhalt in eine Form auf wie wir diese gerne hätten, von Darstellungsloops für einzelne Elemente (Stichwort Repeater) oder Tabellen. In bisherigen Projekten und Tests konnte ich alles mit Repeatern oder Tabellen lösen. Es gibt aber noch vieles, VIELES mehr. Dennoch haben alle View Elemente etwas gemeinsam - sie benötigen einen Data provider. Und dieser kommt jetzt.

Functions

Unsere List Users Conneciton ist relativ simpel gestrickt - sie beinhaltet nur eine Funktion und diese heisst "read_users". Wenn man auf diese klickt erscheint rechts die Konfiguration dieser Abfrage. Hier kann definiert werden wie das Model heissen soll, welche Tabelle ausgelesen werden soll und ob nach etwas gefiltert werden soll. Eigentlich könnt Ihr hier alles machen was ihr auch mit einer normalen SELECT abfrage programmieren könnt.

Conclusion

Und so ergibt sich nun auch langsam ein Schema. Der Event index ruft die Funktion read_users sowie die View users Table auf (hol die Daten und stelle diese dar). Die Funktion verbindet sich auf die Datenbank und holt die Daten. Schreibt diese dann in eine Variable (var:read_users). In den Views erstellen wir eine Tabellenansicht, diese greift auf die Daten der Variable read_users zu (Data provider) welche dank der Checkbox "Include all the provider fields" alle Tabellen Spalten eins zu eins übernimmt und darstellt (inkl. deren Titel).
chrono 2

Die Ansicht verschönern

spaltentitel meme
Okey wir haben nun also unsere Ansicht, aber die Spaltentitel, kann denn nicht jemand an die Spaltentitel denken? Don't worry! Versucht mal unter Views im Textfield Columns list den folgenden Eintrag zu machen:
Users.id:ID
Users.name:Benutzername
Users.registerDate:Registriert am
Deaktiviert nun auch darunter die Option "Include all the provider fields" Wenn Ihr nun die Connection speichert und via Preview neu aufruft werdet ihr eine Liste vorfinden welche nur die Spalten  User ID , Benutzername und das Registrationsdatum hat. Natürlich ist das nicht die feine Art, wir rufen so gesehen noch alle Spalten von der Datenbank ab - aber für ein erstes Beispiel soll es uns an dieser Stelle genügen.
chrono 3
Saturday, 28 July 2018 Posted in Ich hab da was gefunden..., Joomla!

Leave a comment

You are commenting as guest.

Kontakt

Marco Rensch
Glashüttenweg 30
8887 Mels
This email address is being protected from spambots. You need JavaScript enabled to view it.

Technik

Webseite basierend auf Joomla!
Template erstellt mit uikit
Symbolbilder von unsplash.com