Ich muss eine Seite / ein Formular basierend auf der Liste der Elemente des Benutzers erstellen. Der Benutzer kann eine Liste von Elementen angeben, die eine Textbeschreibung des Elements enthalten, und angeben, ob es sich um einen Feldtyp text
oder einen list
Feldtyp handelt. ( Stellen Sie sich eine Liste der Geräte vor, die ausgecheckt werden können, und die Liste der zu überprüfenden Elemente variiert je nach Gerätetyp. Es gibt sicherlich einige gemeinsam genutzte Elemente, die jedoch vom Gerätetyp, Modell usw. abweichen. ) Anstatt einfach eine vorhandene XML-Datei aus dem models\forms\
Ordner zu laden und damit auszuführen, können im laufenden Betrieb ein neues Feldset und eine Reihe neuer Felder hinzugefügt werden.
Wenn ja,
- Wie wird das erreicht?
- Wo wäre der richtige Ort dafür, damit MVC es so behandelt, als wäre es in der "Standard" -Form XML?
- Wie kann eine Liste dieser Felder für die Anzeige in der Ansicht am besten abgerufen werden?
models \ myform.php
$form = $this->loadForm('com_mycomponent.myform', 'myform', array('control' => 'jform', 'load_data' => $loadData));
controller / myform.php
// Get the user data.
$data = JFactory::getApplication()->input->get('jform', array(), 'array');
// Validate the posted data.
$form = $model->getForm();
if (!$form) {
JError::raiseError(500, $model->getError());
return false;
}
...
// Validate the posted data.
$data = $model->validate($form, $data);
...
// Attempt to save the data.
$return = $model->save($data);