2012-08-08 55 views
0

我正在创建2种内容类型:“事件”和“发言者”。一个事件有多个发言者。 对于我使用实体引用模块的关系。 我想让视角能够在扬声器的信息中看到一个事件,图片,.. 有人告诉我也使用显示套件,但我不知道为什么我需要这个。 什么是最好的方法?为相关内容类型创建视图

在此先感谢您的帮助! :) Simon

回答

0

您绝对可以通过视图来做到这一点:显示视图中引用节点的字段。

创建一个视图,显示您希望从事件中获得的所有字段,但为了能够为该事件拉取适当的扬声器字段,您必须添加该扬声器关系。

  1. 转到您的视图的“高级”部分,然后点击“添加”旁边的“关系
  2. 选择“内容:演讲人或任何你所引用字段的确切名称是
  3. 现在,您应该能够从字段列表中看到并选择任何“发言人”字段,但要确保在选择其中一个发言人字段时,您选择了显示发言人时使用的“发言人”关系。这是现场设置页面上的一个选项。

这是否适合您?

0

是的,你可以用Views来做到这一点。

但是由于您使用的是实体关系,因此您需要在视图中添加两个关系。一个是从'事件'到'实体'的关系,另一个是从'实体'到'发言者'的关系。这就像添加多对多连接表一样。

  1. 让事件的看法
  2. 让事件和扬声器
  3. 之间的实体关系添加事件和实体关系
  4. 添加使用步骤3
  5. 关系到音箱相互之间的关系之间的关系
  6. 从扬声器节点添加您需要的任何字段。

希望有所帮助。我自己在很长一段时间内陷入了困境。

如果您的关系数超过1:1,主要问题是管理'重复'。您可以使用“使用聚合”功能来管理该功能。

另一个我想出的用于我正在研究的户外活动网站(http://dev.naturefitter.com/packages)避免重复问题的替代方法是使用Views Field View(http://drupal.org/project/views_field_view/)。我创建了一个主视图(在我的示例中为'Packages')和后续的子视图('Activities'),它们从主视图中获取上下文过滤器。子视图是一个块,它具有来自Activity内容类型的字段和一个上下文过滤器,该过滤器期望来自它所附带的包内容的nid。

最佳,

帕特