Moin zusammen,
ich probiere für einen Kunden gerade mal ein bisschen mit MetaModels herum. Geht darum eine Art Projektbörse zu erstellen, wo FE-Mitglieder eigene Projekte eintragen und im besten Fall auch später ändern können.
Den Part mit der Eintragung habe ich soweit schon hiermit hinbekommen. Klapt auch.
FE-Formular: FE-Eingabe.jpg
BE-Formularkonfiguration: BE-Eingabeformular.jpg
Das Feld ID im Frontend werde ich noch als verstecktes Feld anlegen, ist nur jetzt zur Kontrolle noch sichtbar. Es wird über das Insert-Tag "{{user::id}}" mit der ID des angemeldeten Nutzers gefüllt, so dass man später die Projekte zuordnen kann.
Nach Anleitung im Wiki habe ich dann eine FE-Liste mit Zusatzfilter erstellt, so dass nur die Projekte des angemeldeten Nutzers angezeigt werden. Dieser ist direkt im Modul als "Anzuwendene Filtereinstellung" ausgewählt. Die Liste enthält außerdem den Details-Links, der zur Detailansicht eines Projektes leitet.
Zusatzfilter: BE-Zusatzfilter.jpg
FE-Liste: FE-Liste.jpg
Meine Überlegung ist nun, dass das angemeldete Mitglied auf der "Detailseite" die eingegebenen Daten in einem Formular angezeigt bekommt, diese ggf. ändern kann und nach Klick auf Speichern, diese in der Datenbank aktualisiert werden.
Dass die Daten in Formularfeldern ausgegeben werden habe ich über die Templates der einzelnen Felder gelöst. Beispielsweise habe ich für das Text-Attribut ein Template angelegt und bearbeitet:
PHP-Code:
<input name="<?php echo $this->additional_class; ?>" type="text" value="<?php echo $this->raw; ?>">
Damit der name des input-Feldes richtig gesetzt wird, habe ich mich dem Feld "Zusätzliche CSS-Klasse" bedient. Den Spaltennamen "colname" konnte ich leider nicht finden, bzw herausfinden, wie ich diesen direkt ausgebe, ohne den Feldnamen so zu übergeben.
BE-Attribut: BE-Attribut.jpg
Nun habe ich dazu ein paar Fragen
- Wie kann ich den Spaltennamen in das name-Attribut des input-Feldes besser übergeben?
- Ist der Ansatz über die Templates die Ausgabe in input-Felder zu lösen gut? Oder kann man ggf. das über den Formular-Editor erzeuge Formular dafür ebenfalls verwenden?
- Wie sollte ich am besten vorgehen, um die geänderten Daten in die Datenbank zu bringen? (kurzes php-Skript, das als form-action aufgerufen wird? andere Lösung?)
- Gibt es bei diesem Vorgehen allgemeine Bedenken eurerseits? Dann bitte her damit
Wenn das alles so klappt, wie ich es hoffe, werde ich das auch gerne ins Wiki bringen, solange die Spenden-Summe für das echte Frondend-Editing noch nicht zusammen gekommen ist.
Besten Gruß,
sebi
Lesezeichen