【问题标题】:How to structure a multi-parameter search in Falcor如何在 Falcor 中构建多参数搜索
【发布时间】:2016-09-23 07:02:41
【问题描述】:

为 Falcor 查询构建搜索路径的最佳做法是什么?

这是一个来自人员配置域的示例,其中人员配置协调员试图为项目需要人员配备人员:

  • 需要有startDateendDate - 两者都是需要的简单字符串属性
  • 需要project,因此它引用了一个项目
  • 需要skill,所以它引用了一项技能

以下是需求地图中的需求:

needMap: {
    101: {
        startDate: '2016-07-04T04:00:00.000Z',
        endDate: '2016-10-22T03:59:59.999Z',
        project: $ref('projectMap[87]'),
        skill: $ref('skillMap[3]')
    },
    ...
}

如何指定搜索符合以下条件的所有需求:

  • minStartDate:需要的最短开始日期
  • maxStartDate: 需求的最长开始日期
  • projectId:过滤到只需要这个项目
  • skillId:过滤到只需要这个技能

注意:我不是在寻找进行实际搜索的代码或想法,只是在寻找如何使用 Falcor 路径概念指定搜索。

【问题讨论】:

    标签: falcor


    【解决方案1】:

    来自 github 中 falcor 存储库的问题 #713#775 解决了这个问题。出现了两种可能的解决方案:

    • 您可以使用查询字符串,对于您的情况,它会是这样的:model.get(["needs", "search", "minStartDate=2016&maxStartDate=2016&projectId=$ref(projectMap[87])])
    • 您可以使用另一个端点进行搜索,然后仅使用 falcor 来获取有关另一个端点返回的结果的更多信息

    我想另一种选择是使用call 而不是get,因为这允许您传递多个参数。你会有这样的东西:

    model.call(
        ["model", "search"],
        {
            minStartDate: "2016",
            maxStartDate: "2016",
            projectId: $ref('projectMap[87])
        },
        [],
        []);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-05-25
      • 2014-12-27
      • 2016-07-29
      • 2021-02-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多