【问题标题】:Bootstrapping data with Backbone using one query as opposed to multiple queries使用一个查询而不是多个查询使用 Backbone 引导数据
【发布时间】:2012-06-11 05:43:44
【问题描述】:

如果我错了,请纠正我,但是一个复杂的查询是否比多个小查询便宜 -> Question?似乎列出的问题有相反的观点。我总是被教导说,最昂贵的操作是打开和关闭与数据库的连接。如果是这种情况,在应用程序启动时引导数据的最有效方法是什么?

为简单起见,假设我的应用程序需要最新帖子、最新类别、登录用户和最新标签的集合。现在我可以在一个查询中获取所有这些数据,或者我可以单独获取这些数据。你会推荐哪一个?如果我使用单个查询,您通常如何在 Backbone 中执行此操作,您将如何通过 Restful API 执行此操作?

非常感谢

泰隆

【问题讨论】:

标签: rest backbone.js backbone-relational


【解决方案1】:

backbone-relational(您提到的)在骨干内部提供了一个解决方案,而不使用相关问题中建议的 jQuery.getJSON。只需在对根查询的响应中返回所有内容并定义与 JSON 结构匹配的关系。

例如,我刚刚写了一些东西,它在响应的根目录中返回一组相关的配置文件对象,然后在其他地方使用 profile_ids。请务必同时定义顶级关系和引用(使用 keySource 和 keyDestination)。

【讨论】:

  • 我必须玩 Backbone 关系。因此,如果我在模型中定义关系并返回包含关系的 json 字符串,它们是否会映射到各自的模型?
  • 是的。从文档中看并不明显,但我已经通过测试验证了这种行为。
【解决方案2】:

多个请求异步执行,因此总时间不是所有请求时间的总和。与任何优化一样,您应该检查潜在收益,也许您根本不必费心。

在相关问题中有很多可能的方法(我喜欢 Backbone,因为这种灵活性)。

还有另一个可以实现零附加请求的目标。您可以在生成页面时将所有需要的数据嵌入到服务器端的页面脚本标签中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-09-11
    • 1970-01-01
    • 1970-01-01
    • 2016-02-08
    • 1970-01-01
    • 2019-03-22
    • 1970-01-01
    相关资源
    最近更新 更多