ユーザーのアイテムリストに基づいてページ/フォームを生成する必要があります。そのままの形で、ユーザーはアイテムの説明を含むアイテムのリストを指定でき、text
それがlist
フィールドタイプかフィールドタイプかを指定できます。(チェックアウトできる機器のリストを想像してください。チェックする項目のリストは機器のタイプによって異なります。確かにいくつかの共有アイテムがありますが、それらは機器のタイプ、モデルなどによって異なります)。そのため、単に既存のXMLファイルをmodels\forms\
フォルダーからロードして実行する代わりに、新しいフィールドセットと一連の新しいフィールドをその場で追加できます。
もしそうなら、
- それはどのように達成されますか?
- MVCが「標準」形式のXMLであるかのようにMVCがそれを処理できるようにするための正しい場所はどこでしょうか。
- ビューに表示するためにこれらのフィールドのリストを取得するのに最適な方法は?
models \ myform.php
$form = $this->loadForm('com_mycomponent.myform', 'myform', array('control' => 'jform', 'load_data' => $loadData));
controllers / 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);