如何基于数据库表创建动态表单助手?
问题描述:
使用cakephp 2.3.0 帮助程序的条件是: 1)我需要使用多种形式的下拉框,并且我不想在每个控制器中执行loadModel(12) 2)需要从数据库表中获取数据 3)我正在考虑不为表格烘焙文件。 4)想使用自定义mysql查询。如何基于数据库表创建动态表单助手?
E.g我有一个表名为国家和下拉应该是关键=>缩写名称和名称=>全名。
任何建议将理解..
答
我在辅助 '
public function getDropDownList($table,$key,$value)
{
//$db =& ConnectionManager::getDataSource('default');
$fields = $key.','.$value;
$CommercialHeaders =& ClassRegistry::init('tablename');
$sql = $CommercialHeaders->query('select '.$fields.' from '.$table.' as DropDown');
foreach($sql as $val)
{
$countryList[$val['DropDown'][$key]] = $val['DropDown'][$value];
}
//debug($countryList);
return $countryList;
}
` 创建的函数,只是通过使表名和字段称为它从视图,这将产生一个数组,所以它解决了我的问题,而无需在appcontroller中设置它或使用requestAction