08.03.2013 Aufrufe

Tagebuch einer Extension-Entwicklung - Contao Wiki

Tagebuch einer Extension-Entwicklung - Contao Wiki

Tagebuch einer Extension-Entwicklung - Contao Wiki

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Schritt 2: <strong>Extension</strong>-Creator<br />

Also, los geht es mit dem Skelett für die geplante <strong>Extension</strong>. Ich verwende den <strong>Extension</strong>-Creator aus dem<br />

<strong>Extension</strong>-Repository.<br />

● Titel: Es geht um Turnierpaar-"Verwaltung", und um Namenskonflikte zu vermeiden möchte ich gerne<br />

einen spezifischen Präfix nutzen: gw angelehnt an den Vereinsnamen "Grün-Weiß". Also: Titel =<br />

gw_turnierpaare. An dieser Stelle bin ich mir noch nicht so sicher, wo dieser "Titel" überall erscheinen<br />

wird, und ob es deshalb ein beliebiger Text sein soll, oder eher ein "identifier", also z.b. ohne<br />

Leerzeichen u.ä. Sicherheitshalber gehe ich den Identifier-Weg. Besser hässlich als nicht-funktionierend.<br />

● Ordnername: Ebenfalls gw_turnierpaare.<br />

● Autor, Copyright und Lizenz: Selbsterklärend<br />

● Paket: Ein Paketname ist gefragt. Der Hilfetext unter dem Eingabefeld schlägt hilfreich "z.B.<br />

meinEigenesModul" vor. Ist das Modul jetzt das Paket? Was ist ein Paket? Sowas wie ein Namensraum?<br />

Da ich noch nicht weiß, ob ich für die Vereinsseite noch andere <strong>Extension</strong>s pogrammieren werde,<br />

nehme ich die Vereinsabkürzung als "Paketname", also "GW". Weitere vereinsspezifische <strong>Extension</strong>s<br />

würde ich dann in dasselbe Paket stecken.<br />

● Ein Backend-Modul hinzufügen: Ja klar, schließlich sollen Daten im Backend bearbeitet werden. Also<br />

dort ein Häkchen.<br />

● Backend-Klassen: Wenig hilfreicher Erklärungstext: "Hier können Sie eine kommagetrennte Liste der zu<br />

erstellenden Backend-Klassen eingeben." - Was sind Backend-Klassen? Wofür brauche ich die?<br />

Eigentlich müsste doch alles, was ich im Backend vorhabe, durch Einträge im DCA-File realisierbar sein,<br />

schließlich geht es nur um Pflege von zwei abhängigen Datenbanktabellen. Also mal mutig leer<br />

gelassen, falls das falsch ist kann man es später noch hinzufügen.<br />

● Backend-Tabellen: Das sind wohl meine Datentabellen, ich will eine für Turnierpaare, eine für<br />

Meldungen, also: "tl_gw_turnierpaare,tl_gw_meldungen".<br />

● Backend-Templates: Auch hier wieder wenig erhellender Hilfetext. Auch das TL-Buch beschränkt sich da<br />

leider fast auf das Abschreiben der Hilfetexte unter den Eingabefeldern. Ich kenne Templates nur für<br />

das Frontend, also beschließe ich mutig, dass ich das wohl nicht brauche. Sollte sich das später als<br />

Irrtum herausstellen, wird es sich hoffentlich noch korrigieren lassen.<br />

● Ein Frontend-Modul hinzufügen: Aber klar, die Daten sollen schließlich im Frontend visualisiert werden.<br />

Also Haken dran.<br />

● Frontend-Klassen: So weit wie ich es bisher verstanden habe, braucht jedes Modul eine eigene Klasse.<br />

Nach m<strong>einer</strong> bisherigen Planung brauche ich ein Modul "Turnierpaarliste" inklusive Detail-Ansicht der<br />

einzelnen Paar-Einträge. Die Unterscheidung aktiv/nicht aktiv würde ich gerne über einen Parameter im<br />

Modul lösen, so dass dasselbe Modul die Liste der aktiven und der ehemaligen Paare anzeigen kann.<br />

Außerdem benötige ich ein Modul "Meldeliste" mit der chronologisch sortierten Übersicht der<br />

Meldungen. Also: "gwTurnierpaarliste,gwMeldeliste" als Klassennnamen.<br />

● Frontend-Tabellen: Ratlosigkeit. Was unterscheidet Frontend-Tabellen von Backend-Tabellen? Da ich<br />

meine Tabellen schon in den Backend-Tabellen abgehandelt habe, lasse ich das Feld leer.<br />

● Frontend-Templates: Natürlich! "gw_turnierpaarliste,gw_turnierpaarliste_detail,gw _meldeliste" fallen<br />

mir sofort ein, vielleicht genügt das schon. Falls nicht, kann ich später noch welche hinzufügen.<br />

● Sprachpakete erstellen: Natürlich. Auch wenn es wahrscheinlich niemand in Englisch benutzen wird, tut<br />

es mir aber auch nicht weh, also Sprachen = "en,de".<br />

<strong>Tagebuch</strong> <strong>einer</strong> <strong>Extension</strong>-<strong>Entwicklung</strong> bis 104.odt Seite 10 von 121

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!