首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >meteor(blaze)中的复杂网格实现

meteor(blaze)中的复杂网格实现
EN

Stack Overflow用户
提问于 2015-10-11 23:51:24
回答 1查看 81关注 0票数 0

首先,让我解释一下我的集合的模式。我有3个收集公司,交易,价格我想使用所有三个收集的信息,并使一个单一的反应,响应表。这是图片

现在,价格收集模式如下所示

代码语言:javascript
复制
{
  "_id" : "kSqH7QydFnPFHQmQH",
  "timestamp" : ISODate("2015-10-11T11:49:50.241Z"),
  "dealId" : "X5zTJ2y675PjmaLMx",
  "deal" : "Games",
  "price" : [{
      "type" : "worth",
      "value" : "Bat"
    }, {
      "type" : "Persons",
      "value" : 4
    }, {
      "type" : "Cost",
      "value" : 5
    }],
  "company" : "Company1"
}

公司集合的架构为

代码语言:javascript
复制
{
  "_id" : "da2da"
  "name" : "Company1"
}

交易收集的架构为

代码语言:javascript
复制
{
  "_id" : "X5zTJ2y675PjmaLMx",
  "name" : "Games"
}

对于每个公司,表中将添加3列(价值,人员,成本)对于每个交易,表中将有一个新行。

因为信息来自3个集合到单个表中。首先,我想问一下,用3个不同的集合制作一个表是否明智?如果是,我如何在blaze中做到这一点?如果不是。然后我将不得不从价格收集只做表。这个集合的模式应该是什么?附注:在这两种情况下,我都想使表格成为反应性的。

EN

回答 1

Stack Overflow用户

发布于 2015-10-12 00:19:55

首先,我推荐使用reywood:publish-composite来发布相关的集合。

其次,设置这样的表没有内在的问题,您首先要确定在空格栏中使用{{#each}}循环遍历哪个集合,然后定义将相关集合中的值返回到模板的帮助器。

就您的模式设计而言,选择是否在集合中使用嵌套还是使用完全独立的集合通常取决于大小。如果相关对象总体上是“小的”,那么嵌套就可以很好地工作。当您发布和查询该集合时,您会自动获得嵌套对象。如果otoh它将是“大的”和/或你想避免当相关对象中的某些东西发生变化时必须更新每个文档,那么单独的集合可能更好。

如果您确实将集合分开,那么您将希望通过_id而不是name来引用另一个集合中的对象,因为名称很容易更改。例如,在您的价格集合中,您可能希望使用companyId: "da2da"而不是company: "Company1"

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33066940

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档