2012-06-07 40 views
0

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

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

非常感谢

泰隆

+1

相关:http://stackoverflow.com/questions/9781102/backbone-multiple-collections-fetch-from-a-single-big-json-file – fguillen

+0

正是我在找什么。谢谢! – TYRONEMICHAEL

回答

0

backbone-relational(你提到的)在不使用jQuery.getJSON的情况下提供了一个在主干内部的解决方案。只需返回所有内容即可响应根查询并定义与JSON结构匹配的关系。

例如,我刚刚写了一些内容,它在响应的根目录中返回相关配置文件对象的数组,然后在别处使用profile_ids。确保定义顶级关系和引用(使用keySource和keyDestination)。

+0

我必须玩骨干关系。因此,如果我在模型中定义关系并返回包含关系的json字符串,它们将映射到它们各自的模型? – TYRONEMICHAEL

+0

是的。从文档中看不出来,但我已通过测试验证了该行为。 –

0

多个请求执行异步所以总时间是不是所有的请求次数的总和。和任何优化一样,你应该检查潜在的收益,可能你根本就不用担心。

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

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