使用 nodereference + 视图创建组合视图

Posted

技术标签:

【中文标题】使用 nodereference + 视图创建组合视图【英文标题】:Using nodereference + views to create combined view 【发布时间】:2010-06-11 17:55:46 【问题描述】:

我正在尝试设置关系视图,但不知道该怎么做。

这是我打算使用节点类型 Artist 和 Song 的示例。

艺术家歌曲长度 鲍勃·迪伦像滚石一样 2:00 布鲁斯斯普林斯汀大西洋城 4:00 Burce Springsteen 天生会奔跑 5:24 范莫里森多米诺骨牌 3:22 范莫里森棕眼女孩 4:30

假设我有一个 Artist 节点类型,它有一个指向 Song 的节点引用(设置为无限制)和一个带有额外长度字段的 Song 数据类型,我将如何配置视图以输出此视图?

谢谢! 伊恩

【问题讨论】:

【参考方案1】:

这基本上是视图“关系”的参考用例——它们是一种明确拼写连接以在同一视图中拉入不同节点集的方式。

如果我正在构建它,我会创建一个 Song 内容类型,它具有对 Artist 的单个节点引用。然后我会构建一个包含“歌曲标题”和“歌曲长度”字段的歌曲视图。然后我会为“艺术家”节点参考字段添加一个关系。一旦你添加了这样的关系,你可以在视图中添加一个 SECOND 'Title' 字段,并指定它应该来自 artist 节点而不是 song em> 节点。

【讨论】:

感谢@Eaton。不幸的是,内容类型已经以相反的方式构建,已经输入了大量数据,所以我无法采用你的方法。不过,从头开始似乎效果很好!如果您好奇我是如何做到的,请在下面查看我的答案。【参考方案2】:

这是我在 Drupal 论坛上得到的一个完美运行的答案:

以下假设artist为artist的title字段,song为歌曲的title字段。

使用以下内容创建视图 字段:标题(标签设置为艺术家) 过滤器:节点:已发布设置为是,节点:类型设置为艺术家。

您现在应该有一个列出所有艺术家的视图。

在歌曲的艺术家节点引用字段上添加关系,确保 delta 为“全部”。 添加接下来的两个字段时使用关系 字段:节点:标题(标签设置为歌曲) 字段:内容:长度(或您所称的任何字段)

现在在“基本设置”下将样式设置为“表格”。

http://drupal.org/node/825168

【讨论】:

以上是关于使用 nodereference + 视图创建组合视图的主要内容,如果未能解决你的问题,请参考以下文章

Drupal Views / Node Reference 获取父母关系

创建视图 + 查询(组合列 + 添加额外属性)

在 Drupal 中为组合提要创建视图

创建一个组合两个表的视图 ms sql server 2014

具有组合布局的集合视图不适用于标题视图

SwiftUI之深入解析如何创建和组合视图