0
我想根據存儲在XML文件中的字段及其定義動態地創建表單。在我的XML中,我已經定義了1個複選框,其中包含一些標籤和一個帶有某個標籤的文本框。在cakephp中構建動態表單
如何根據我在xml中的內容動態生成表單。
我不想創建任何模型。
我想根據存儲在XML文件中的字段及其定義動態地創建表單。在我的XML中,我已經定義了1個複選框,其中包含一些標籤和一個帶有某個標籤的文本框。在cakephp中構建動態表單
如何根據我在xml中的內容動態生成表單。
我不想創建任何模型。
不確定你要去哪裏或爲什麼需要。我已經從數據庫定義中構建了動態表單(這樣添加/刪除字段就會有前端,但是不明白爲什麼會從xml文件中做到這一點。)無無,基本思想如下:
在控制器功能
// Import cake's xml class
App::import('Xml');
// your XML file's location
$f = "/path/to/form.xml"; //no need to fopen('file.xml','r'), cake does it
// parse the xml
$xml_array =& new XML($f);
$this->set('form_info', Set::reverse($xml_array));
在視圖:
//Assuming you know how the xml is gonna be setup declare the magic form elements
e($form->create('Model', array('action'=>'action_name')));
foreach($form_info[fields] as $field){
e($form->input($field['name'], array('class'=>field['class'],
'label'=>field['label'], 'type'=>$field['type'])
}
//and close the form:
e($form->end('submit'));
那的基本理念,在實踐中我想包在這些陣列選項空()檢查,並根據您的XML結構和字段使用你需要對條件進行調整(也許實現一個開關ch case來處理特定的格式)。這顯然假定你的表或模型設置爲處理任何設置的字段。
您不需要模型來創建表單。到目前爲止你嘗試了什麼,以及那些阻礙你的問題是什麼? – deceze