Задать вопрос
Eli_Jah
@Eli_Jah
web разработчик

Как в MODx.combo.ComboBox вывести данные из БД?

Доброго времени суток!
Начал разбираться в создании компонентов для Modx Revo и возникла проблема:
Есть таблица в которой храним отзывы для каталога компаний в ней поля типа: id, text, name, company_id. В админке компонента мы можем создавать и редактировать отзывы, но(!) очень неудобно следить за ними по ID компании, соответсвенно было бы супер взять из БД имя этой компании и заменить им циферку, но сохранять при этом циферку.

Пример комбобокса. Как его изменить под мои нужды. Знаю, что можно подключить коннектор (поле URL), но в каком виде он должен выдавать данные?, если конечно я правильно суть коннектора понял
EWreview.combo.Rate = function(config) {
    config = config || {};
    Ext.applyIf(config,{
        store: new Ext.data.ArrayStore({
            id: 0
            ,fields: ['rate','display']
            ,url: ??????????????
            ,data: [
                ['1','1']
                ,['2','2']
                ,['3','3']
                ,['4','4']
                ,['5','5']
            ]
        })
        ,mode: 'local'
        ,displayField: 'display'
        ,valueField: 'rate'
    });
    EWreview.combo.Rate.superclass.constructor.call(this,config);
};
Ext.extend(EWreview.combo.Rate,MODx.combo.ComboBox);
Ext.reg('ewreview-combo-rate',EWreview.combo.Rate);
  • Вопрос задан
  • 786 просмотров
Подписаться 2 Оценить Комментировать
Решения вопроса 1
Eli_Jah
@Eli_Jah Автор вопроса
web разработчик
Сам спросил, сам ответил
EWreview.combo.Rate = function(config) {
    config = config || {};
    Ext.applyIf(config,{
        name: 'name'
        ,hiddenName: 'product_id'
        ,displayField: 'name'
        ,valueField: 'product_id'
        ,fields: ['product_id','name']
        ,pageSize: 20
        ,url: EWreview.config.connector_url
        ,baseParams: {
            action: 'ew/getlist'
        }
        ,typeAhead: true
        ,editable: true
    });
    EWreview.combo.Rate.superclass.constructor.call(this,config);
};
Ext.extend(EWreview.combo.Rate,MODx.combo.ComboBox);
Ext.reg('ewreview-combo-rate',EWreview.combo.Rate);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы