dataFeed

URL, который компонент будет использовать для загрузки данных во время binding-а

string| function dataFeed;

Example

var myform = new webix.ui({
    view: "form",
    // ...
    dataFeed: "data/form.php"
});
myform.bind(mygrid);

Details

Использование во время binding-а

В примере выше свойство используется в контексте 'binding'. Благодаря ему, данные в зависимый компонент загружаются напрямую с сервера, а не из главного компонента.

Например, у вас есть форма, связанная с таблицей. Форма отображает детали записи, выбранной в таблице. Как только пользователь выбирает запись:

  • Поведение по умолчанию: форма берет данные из таблицы (данные на клиентской стороне);
  • Использование "dataFeed": форма загружает данные напрямую с сервера (данные приходят с сервера).

Использование dataFeed для Form и DataCollection

"dataFeed" для форм и коллекций (т.е. компонентов данных) работает практически одинаково, разница есть только в параметрах URL-а, который формируется для отправки запросов на сервер:

Предположим, что dataFeed это "data/form.php":

  • для forms URL запроса выглядит как: "data/form.php?action=get&id=" + obj.id
  • для data компонентов URL запроса следующий: "data/form.php?filter[id]=" + obj.id

где obj - это выбранный элемент данных в главном компоненте.

Datafeed, определенный как функция

Datafeed может быть также определен как функция, которая перезагружает данные для компонента.

В коде ниже компонент suggest, связанный с полем для ввода данных (input), перезагружает данные, основанные на текущем введенном значении:

webix.ui({
    view: "suggest",
    keyPressTimeout: "1000",
    input: $$("text_search"),
    body: {
        dataFeed: function (text) {
            this.load("server/data.php?filter[value]="+text)
        }
    }
});
See also
Наверх
If you have not checked yet, be sure to visit site of our main product Webix ui component library and page of datagrid in html5 product.