过滤查询关系的项目

时间:2018-05-31 21:20:46

标签: google-app-maker

鉴于以下情况:

型号:

Projects
Tasks

关系:

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

我有一个数据源的手风琴,只显示具有未完成任务的项目。 (例如,query.filters.Tasks.Completed._equals = false)

在手风琴细节中,我有一个列表,我只想显示符合特定条件的任务(例如,Task.Category =“Marketing”或“Sales”)。

enter image description here

这是可能的,如果是这样,会怎样做?

1 个答案:

答案 0 :(得分:0)

  1. 为过滤的任务创建专用数据源
  2. 将其设置为手动加载模式
  3. 在Accordion的详细原型
  4. 中放一张桌子
  5. 将表绑定到步骤#1的数据源
  6. 将此片段添加到Accordion详细信息原型的onDataLoad事件中
  7. // 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();