2

有一个常见的建议是每个 ViewModel 有一个表(或 SQL 视图)。我无法真正理解如何在场景中实现这一点,然后我需要在视图和子列表中显示聚合模型。例子:

主题标题

主题描述。

  • 评论 1
  • 评论 2
  • 评论 3

有一个聚合Topic模型应该是一个根模型,并由第一个 SQL 视图和许多子模型表示 -用外键Comment链接。Topic所以我们有 2 个表格或视图,并join在屏幕上显示它们。
问题是:

  1. 单个 ViewModel 可以有多个连接表吗?

  2. 是否可以将上面的示例展平以将其保留在单个 SQL 视图中?如果是这样,那么 ViewModel 类应该是什么样子?

  3. 如果我们有超过 1 个链接模型怎么办?

编程语言并不重要。

4

2 回答 2

1

面向文档的数据库更适合读取模型。您可以为每个 ViewModel 存储文档,并且不需要连接等。但是您的 ViewModel 不是必须只引用一个文档。在您的示例中,如果您通过 ajax 加载更多评论,则可以将评论存储在另一个文档/集合/表中。如果您对评论使用搜索查询,您也可以将其存储在另一个文档/集合/表中。如果您将所有评论与主题一起加载,您可以将其存储在一个文档中(主题和评论一起)。稍后,如果您决定通过 ajax 加载评论或允许用户查询评论,您可以拆分此文档或将评论另外存储在另一个集合/表中。

于 2013-08-18T16:01:35.547 回答
0

建议以适合您需求的格式存储您的数据。无连接查询是首选,不是强制性的。一个实用的替代方法是将您的视图作为文档存储在文档数据库中。

于 2013-08-15T09:55:46.533 回答