Фильтровать элементы отношения по запросу - PullRequest
0 голосов
/ 01 июня 2018

Данный сценарий ниже:

Модели:

Projects
Tasks

и

Отношения:

Projects (one) <--> (many) Tasks

У меня есть аккордеон с источником данных, который показывает только проекты с незавершенными задачами.(например, query.filters.Tasks.Completed._equals = false)

В подробностях аккордеона у меня есть список, в котором я хочу показать только задачи, которые соответствуют определенным критериям (например, Task.Category = "Marketing«ИЛИ« Продажи »).

enter image description here

Возможно ли это, и если да, то как это будет сделано?

1 Ответ

0 голосов
/ 01 июня 2018
  1. Создание выделенного источника данных для отфильтрованных задач
  2. Установка режима ручной загрузки
  3. Перетаскивание таблицы внутри прототипа деталей Accordion
  4. Привязка таблицы к источнику данныхиз шага # 1
  5. Добавьте этот фрагмент к событию onDataLoad прототипа деталей Аккордеона
// Accordion details onDataLoad event handler
var ds = app.datasources.TasksFitered;
var projectKey = widget.datasource.item._key;

ds.query.filters.Category._in = ['Marketings', 'Sales'];
ds.query.filters.Project._key._equals = projectKey;
ds.load();

Скорее всего, вам потребуется выгрузить источник данных по событию onDetachиз деталей, чтобы скрыть старые результаты, когда пользователь переключается между проектами:

// Accordion details onDetach event handler
app.datasources.TasksFitered.unload();
...