如何按关系限制Drupal视图结果
我在以下关系中预定义了一组与Drupal杂志相关的内容类型:如何按关系限制Drupal视图结果,drupal,drupal-6,drupal-views,Drupal,Drupal 6,Drupal Views,我在以下关系中预定义了一组与Drupal杂志相关的内容类型: 故事:有标题、正文、作者、问题的必需节点引用、插图的可选节点引用 文章:具有标题、正文和对问题的必需节点引用 插图:具有图像和参与者配置文件 问题:有标题和日期 贡献者档案:有名字和姓氏 我想得到的是一个问题清单,其中有一个故事的例子,如果有。如果没有故事(可能只有文章),或者没有任何带有插图的故事,我只想列出问题的标题 因此,我正在寻找如下输出: [StoryImage]2010年12月 2010年11月 [StoryImage
- 故事:有标题、正文、作者、问题的必需节点引用、插图的可选节点引用
- 文章:具有标题、正文和对问题的必需节点引用
- 插图:具有图像和参与者配置文件
- 问题:有标题和日期
- 贡献者档案:有名字和姓氏
2010年11月
[StoryImage]2010年10月
[StoryImage]2010年9月
等等 在这一点上,我并不关心样式或标记——我可以搞定它 以下是我目前使用的视图设置,但该设置不起作用:
- 过滤器:节点类型=故事、文章
- 关系:
- 内容:问题
- 内容:插图
- 内容:参与者,使用插图关系
- 字段:
- 内容:图像,使用插图关系
- 节点:标题,使用问题关系
- 排序标准:
- 发行日期,降序
- 贡献者姓氏,降序
2010年12月
2010年12月
2010年11月
2010年11月
我真正想要的是每个问题的第一个结果。有可能吗?如果有,我遗漏了什么?您是否尝试过“独特”过滤器?我不确定您的日期字段是否可用,但每当我获得具有视图的笛卡尔产品时,我都会使用该字段。只需使用drupal db api并编写寻呼机查询即可。根据我的经验,视图在大多数情况下都是有效的,但并非所有情况下都是有效的。在视图的高级设置中,启用聚合。然后确保视图中的第一个字段是您试图获得不同结果的内容类型的NID(在您的情况下,我认为这将是一个问题),以便它首先按该字段分组。您可能还需要在节点标题字段上设置aggregation=MIN 我在这里找到了这些信息:
注意:我刚刚注意到您的问题被标记为Drupal 6,这个解决方案很可能特定于Drupal 7,但这个答案可能会帮助其他人。Berkes:不幸的是,我认为这种情况下的“独特”过滤器适用于故事/文章,而不是问题,因为它没有效果-/@梅丽莎:模块可以为他们的领域提供“独特的”。如果一个模块没有提供一个独特的,它将不适用于该领域。在这种情况下,除了扩展/破解模块之外,我怀疑还有其他解决方案需要改进。尽管你的答案非常正确,但这远远超出了问题的范围。Melissa并没有问“我是否应该不使用FOO的视图”,而是“如何在视图中解决这个问题”。我们不知道她还需要什么。不幸的是,似乎没有办法用视图来实现这一点,所以我的最终解决方案需要使用page_query()。