Joomla - Передача массива из модели в поле настраиваемого фильтра в представлении списка - PullRequest
0 голосов
/ 04 ноября 2019

У меня есть стандартный MVC для перечисления продуктов из внешней базы данных с несколькими полями фильтра, из которых 3 будут использовать один и тот же многомерный набор в МОДЕЛИ.

У меня вопрос ... Как передать массивк функции getOptions () в /components/my_component/fields/mycustomfilterfield.php из модели?

Я знаю, что могу сделать запрос базы данных оттуда, но так как у меня есть 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;
    }
}

Я думаю о двухподходы ... Один из них - передача данных из модели в настраиваемое поле, как описано выше, другой - извлечение Filtermyfilter из filter_mylist.xml и его динамическое создание на лету из модели. Либо бы сработал, но моя проблема в том, что я не знаю, как это сделать. Буду признателен за любую помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...