我有一个标准的MVC,用于列出来自外部数据库的产品,其中包含几个过滤器字段,其中3个过滤器字段将使用MODEL中的相同多维集。
我的问题是...如何从模型中将数组传递给/components/my_component/fields/mycustomfilterfield.php中的 getOptions()函数?
我知道我可以从那里进行数据库查询,但是由于我有3个使用相同数据数组的过滤器字段,所以我不想重复代码,尤其是由于数据库连接是远程的。
看起来像...
class JFormFieldFiltermyfilter extends JFormFieldList
{
protected $type = 'filtermyfilter';
public function getOptions($data = array()) {
// $data would be passed from MODEL
$o = array();
$o[0] = 'Please select...';
foreach($data as $a => $b) {
$o[$a] = $b;
}
$options = array_merge(parent::getOptions(),$o);
return $options;
}
}
我正在考虑两种方法...一种方法是将数据从模型传递到上面的自定义字段,另一种方法是从filter_mylist.xml中取出Filtermyfilter并从中动态创建该模型。都可以,但是我的问题是我不知道该怎么做。我将不胜感激。