Willkommen Gast. Bitte anmelden oder registrieren.

Autor Thema: Formularfelder aus Datenbank laden?  (Gelesen 2112 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Harmageddon

  • Bestätigter Nutzer
  • Beiträge: 23
    • ZweiIconKram
Formularfelder aus Datenbank laden?
« am: 28. Juni 2012, 12:19:31 »
Hi!
Ich bastle gerade an einer kleinen Komponente. Hier soll man Einträge anlegen und entfernen können und zu jedem Eintrag gibt es einige Optionen, die in der Datenbank gespeichert werden. Die Zeilen sind die Einträge, die Spalten die Optionen. Mein Problem ist: Ich habe zu jedem Eintrag aktuell 34 solcher Formularfelder, die alle gleich aussehen und es ist auch möglich, dass mit einem Update der Komponente später weitere dazukommen. Im Moment muss ich jedes Feld in die Datei "com_meinekomponente/admin/models/forms/meinview.xml" eintragen, was bei 34 bis auf den Namen identischen Feldern ziemlich nervig ist.
Daher die Frage: Kann ich die Formularfelder auch irgendwie direkt aus der Datenbank holen, anstatt sie in die XML einzutragen?
Dann müsste ich nicht jede Option doppelt (in die DB und in die XML) eintragen.

bembelimen

  • moderatives Dielektrikum
  • Beiträge: 227
  • Ich kam, sah und zensierte...
    • Joomla! Vereinsverwaltung
Antw: Formularfelder aus Datenbank laden?
« Antwort #1 am: 30. Juni 2012, 12:08:42 »
Hallo,

schau dir JModelForm::loadForm => JForm::getInstance an, die nehmen als Parameter auch einen XML String.
Joomla! ist auch nur ein Mensch...

Harmageddon

  • Bestätigter Nutzer
  • Beiträge: 23
    • ZweiIconKram
Antw: Formularfelder aus Datenbank laden?
« Antwort #2 am: 30. Juni 2012, 12:22:47 »
Hi Ben,
Danke für die Antwort, ich weiß aber noch nicht so recht, was ich damit anfange. Sorry, wenn ich dich jetzt falsch verstehe, aber das Formular im Backend wird schon mit $this->loadForm in "models/meinview.php" aus "models/forms/meinview.xml" geladen. Ich würde es aber gerne stattdessen zumindest teilweise aus der Datenbank laden.
« Letzte Änderung: 30. Juni 2012, 12:30:58 von Harmageddon »

bembelimen

  • moderatives Dielektrikum
  • Beiträge: 227
  • Ich kam, sah und zensierte...
    • Joomla! Vereinsverwaltung
Antw: Formularfelder aus Datenbank laden?
« Antwort #3 am: 30. Juni 2012, 13:23:11 »
Du bastelst dir über JFactory::getXML() und den SimpleXML Methoden dein eigenes XML Konstrukt zusammen (dabei kannst du auch zuerst die Datei laden und dann entsprechend erweitern) und dann übergibst du den String (->asXML()).
Joomla! ist auch nur ein Mensch...

Harmageddon

  • Bestätigter Nutzer
  • Beiträge: 23
    • ZweiIconKram
Antw: Formularfelder aus Datenbank laden?
« Antwort #4 am: 30. Juni 2012, 14:37:23 »
Jetzt hab ich's verstanden. Funktioniert einwandfrei, vielen Dank!