Ergebnis 1 bis 11 von 11

Thema: Wie kriege ich den Inhalt meines Backend Moduls in das Frontend?

  1. #1
    Contao-Nutzer
    Registriert seit
    01.03.2019.
    Beiträge
    23

    Standard Wie kriege ich den Inhalt meines Backend Moduls in das Frontend?

    Hallo zusammen

    Als kleine Einleitung; es handelt sich hier um erste Erfahrungen mit Symfony und Contao Modules. Das ist ein Übungsprojekt.

    Ich habe erfolgreich ein Backend Modul erstellt. In diesem Backend Modul kann man ein Bild sowie Kontaktdaten hinterlegen (das Modul heisst Ansprechpersonen).
    Jetzt will ich dieses Backend Modul auch als Frontend Modul zur Verfügung stellen.
    Ich habe es soweit geschafft, dass ich unter Themes ein neues Modul anlegen kann und ich kann es auch unter Artikel hinzufügen. Leider aber werden meine Ansprechpersonen nicht geladen.

    Wie habe ich das gemacht?:
    Ich habe folgende Files in der Ordnerstruktur /app/Resources/contao bearbeitet:
    - config/config.php
    - dca/tl_contactPerson.php
    - languages/de/modules.php
    - languages/de/tl_contactPerson.php
    - models/ContactPersonModel.php
    - modules/ModuleContactPerson.php
    - templates/modules/mod_contactPerson.html5

    (die Screenshots habe ich angehängt, damit man sehen kann was drin steht)

    Nach langem forschen habe ich viele verschiedene Ansätze gefunden, wie man ein Frontend Modul erstellen kann. Mittlerweile bin ich aber verwirrt, weil ich nicht weiss was noch fehlt oder ob ich einfach etwas falsch gemacht habe.

    In ein paar Forumposts oder Anleitungen finde ich Infos über Controllers, in einem anderen ist nie die Rede von Controllers, dann finde ich eines das mit Models arbeitet und dann finde ich eine Anleitung das kein Model erstellt sondern nur das Module.
    Das YouTube Video https://www.youtube.com/watch?v=VzDYjEd7OyQ&t= spricht davon, dass man neu seine Module im /app Ordner pflegen soll sowie im /src Ordner wenn man ein Bundle erstellen will.
    Wiederum finde ich Posts die eine andere Ordnerstruktur haben wie dieses Video zeigt; z.B. https://gist.github.com/joergmoldenh...dbc2d039095142
    Der Module Ordner ist auf dem gleichen Level wie Resources. (wahrscheinlich ist dies anders wenn es sich um Bundles handelt?).

    Mir ist auch bewusst, dass man dies wahrscheinlich auf mehrere Arten hinbekommen kann.

    Ich bin für jeden Input dankbar.


    Gruss
    Kimo
    Angehängte Grafiken Angehängte Grafiken

  2. #2
    Contao-Nutzer
    Registriert seit
    15.03.2010.
    Ort
    AT
    Beiträge
    204

    Standard

    Jaja das mit den verschiedenen Versionen ist so richtig mühsam bei Contao.
    In 4.8 gibt es den Apps Ordner übrigens nicht mehr.

    Deine Ordnerstruktur sieht nicht nach einem Bundle aus.. stimmt das?
    Dann sollte das module in /systems/modules/contactperson.

    Wenn du ein Bundle machen willst, halte dich an den von dir geposteten gist Link.

    Du kannst auch ein Zip hochladen für ein "nicht Bundle" kann ich dir gern drüber schaun.

    lg

  3. #3
    Contao-Nutzer
    Registriert seit
    01.03.2019.
    Beiträge
    23

    Standard

    Zitat Zitat von heyho Beitrag anzeigen
    Jaja das mit den verschiedenen Versionen ist so richtig mühsam bei Contao.
    In 4.8 gibt es den Apps Ordner übrigens nicht mehr.

    Deine Ordnerstruktur sieht nicht nach einem Bundle aus.. stimmt das?
    Dann sollte das module in /systems/modules/contactperson.

    Wenn du ein Bundle machen willst, halte dich an den von dir geposteten gist Link.

    Du kannst auch ein Zip hochladen für ein "nicht Bundle" kann ich dir gern drüber schaun.

    lg
    Hi heyho

    Ja, ich will kein Bundle machen. Ich habe aber gesehen, dass man trotzdem "Bundle" erweitern muss, auch wenn es kein Bundel ist.
    Auf jeden Fall sieht das so aus gemäss einem Modul das ich als Vorlage heruntergeladen habe.

    Ich lade hier mal meine Files hoch und du kannst sehr gerne kurz drüber schauen. Da wäre ich froh .

    Gruss
    Angehängte Dateien Angehängte Dateien
    Geändert von Kimo (14.02.2020 um 15:04 Uhr)

  4. #4
    Contao-Nutzer
    Registriert seit
    15.03.2010.
    Ort
    AT
    Beiträge
    204

    Standard

    Nein, ich entwickle selbst Module im alten Contao Stil und brauche dafür KEINE Bundle Struktur.
    Lade dein Modul einfach unter /system/modules/ipakim.... hoch und lösche den Cache.

    Ich hab dir meinen Vorschlag hochgeladen - ohne den Code anzuschauen - nur die Struktur angepasst!
    Diesen Ordner hier hochladen:
    /system/modules/ipakim/
    - config
    - dca
    - ...

    (Achtung: NICHT unter /web/system...)

    Immer wieder Cache löschen nicht vergessen - bei jeder Änderung im DCA oder Config.

    Bei Contao 3 Modulen muss du im config/autoload.php alle Klassen und Templates registrieren.
    Habe dir dazu 2 Files unter /config/hinzugefügt (autoload.ini brauchst du nichts ändern).

    lg
    Angehängte Dateien Angehängte Dateien

  5. #5
    Contao-Nutzer
    Registriert seit
    01.03.2019.
    Beiträge
    23

    Standard

    Zitat Zitat von heyho Beitrag anzeigen
    Nein, ich entwickle selbst Module im alten Contao Stil und brauche dafür KEINE Bundle Struktur.
    Lade dein Modul einfach unter /system/modules/ipakim.... hoch und lösche den Cache.

    Ich hab dir meinen Vorschlag hochgeladen - ohne den Code anzuschauen - nur die Struktur angepasst!
    Diesen Ordner hier hochladen:
    /system/modules/ipakim/
    - config
    - dca
    - ...

    (Achtung: NICHT unter /web/system...)

    Immer wieder Cache löschen nicht vergessen - bei jeder Änderung im DCA oder Config.

    Bei Contao 3 Modulen muss du im config/autoload.php alle Klassen und Templates registrieren.
    Habe dir dazu 2 Files unter /config/hinzugefügt (autoload.ini brauchst du nichts ändern).

    lg
    Hi heyho

    Vielen Dank für die Hilfe.
    Ich habe mal das Modul unter system/modules hinterlegt.
    Im Backend erscheint alles und ich kann auch meine Ansprechpersonen erfassen.
    Leider aber erscheint nichtsi m Frontend.
    Ich habe unter Themes ein neues Modul angelegt und contactPerson als Modul ausgewählt.
    Dieses habe ich dann einem Artikel übergeben.
    Er lädt nicht einmal meine <div> Tags die im Template mod_contact_person.html5 hinterlegt sind.

    Kann es sein, dass ich noch etwas am composer sagen soll, dass er das Modul lädt?

    Gruss

  6. #6
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.063
    Partner-ID
    10107

    Standard

    Ich würde dir empfehlen dich an die Dokumentation zu halten und keinen Legacy Code mehr zu benutzen.

  7. #7
    Contao-Nutzer
    Registriert seit
    01.03.2019.
    Beiträge
    23

    Standard

    Zitat Zitat von Spooky Beitrag anzeigen
    Ich würde dir empfehlen dich an die Dokumentation zu halten und keinen Legacy Code mehr zu benutzen.
    Also ich habe schon so viele Sachen ausprobiert und gemäss Dokumentationen und anderen Modulen gearbeitet.
    Ich stehe immer wieder vor dem Problem, dass ich im Frontend einfach keinen Content zu sehen bekomme.

  8. #8
    Contao-Nutzer
    Registriert seit
    01.03.2019.
    Beiträge
    23

    Standard

    Zitat Zitat von Kimo Beitrag anzeigen
    Also ich habe schon so viele Sachen ausprobiert und gemäss Dokumentationen und anderen Modulen gearbeitet.
    Ich stehe immer wieder vor dem Problem, dass ich im Frontend einfach keinen Content zu sehen bekomme.
    Bevor ich den Test mit dem system/modules Ordner durchgeführt habe, sah meine Dokumentstruktur so aus:
    HostpointOrdnerstruktur.png

  9. #9
    Contao-Nutzer
    Registriert seit
    15.03.2010.
    Ort
    AT
    Beiträge
    204

    Standard

    @Spooky: Das empfehle ich mir selbst auch, allerdings lernt man symfony nicht von heut auf morgen...

    @Kimo: Du hast hier nen Punkt am Schluss... protected $strTemplate = 'mod_contact_person.';
    Und wie gesagt, der von dir angegebene gist Link ist perfekt zum Lernen.

  10. #10
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.063
    Partner-ID
    10107

    Standard

    Symfony muss man dafür eh nicht lernen.

  11. #11
    Contao-Nutzer
    Registriert seit
    01.03.2019.
    Beiträge
    23

    Standard

    Zitat Zitat von heyho Beitrag anzeigen
    @Spooky: Das empfehle ich mir selbst auch, allerdings lernt man symfony nicht von heut auf morgen...

    @Kimo: Du hast hier nen Punkt am Schluss... protected $strTemplate = 'mod_contact_person.';
    Und wie gesagt, der von dir angegebene gist Link ist perfekt zum Lernen.
    Komisch, dass ich keine Errormeldungen in den Logs erhalte.
    Funktioniert immer noch nicht. Ich lese mal das Hello World Bundle nochmals durch. Vielleicht finde ich ja noch was falsch war.

    Auf jedenfall werde ich meine Dokumentation hochladen sobald ich es fertig gekriegt habe.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •