drupal视图动态过滤器

drupal视图动态过滤器,drupal,dynamic,filter,views,Drupal,Dynamic,Filter,Views,我有一个Drupal网站,在那里我发布比赛结果。 我已经创建了一个内容类型,我在其中为锦标赛中的1人写入结果。所以字段是:比赛日期、球员姓名、最终位置。 如果有10个人参加比赛,我会为每个球员创建此内容 现在,我想创建一个包含视图的表,列出锦标赛中的所有球员,以及各种信息,如球员姓名/最终位置。通过在视图中添加字段和排序条件,我可以很容易地做到这一点。但我的问题是,下次我们举行锦标赛时我应该做什么。我只想使用相同的视图设置,但不必克隆上一个视图,只需更改日期筛选条件即可。 因此,我需要用户能够查

我有一个Drupal网站,在那里我发布比赛结果。 我已经创建了一个内容类型,我在其中为锦标赛中的1人写入结果。所以字段是:比赛日期、球员姓名、最终位置。 如果有10个人参加比赛,我会为每个球员创建此内容

现在,我想创建一个包含视图的表,列出锦标赛中的所有球员,以及各种信息,如球员姓名/最终位置。通过在视图中添加字段和排序条件,我可以很容易地做到这一点。但我的问题是,下次我们举行锦标赛时我应该做什么。我只想使用相同的视图设置,但不必克隆上一个视图,只需更改日期筛选条件即可。 因此,我需要用户能够查看比赛页面,然后查看特定比赛的结果。然后,如果用户去看另一个比赛的不同页面,那么只会显示这些结果。
我希望以一种干净的方式来完成,不必克隆视图,只需更改日期。

您可以通过使用上下文过滤器创建视图来实现这一点。上下文过滤器将处理分类法节点引用,因此您只能使用一个动态视图。但为了实现这一点,您可能需要稍微调整一下内容类型,以便您的视图更容易过滤它们:

您当前的内容类型包含参赛者/球员的所有信息(比赛日期、球员姓名、最终位置),因此最好将该内容类型命名为参赛者。 然后创建一个新的分类法或内容类型:锦标赛,它将处理锦标赛的信息。保持这些分离是更好的方法

假设你有一个分类法:锦标赛分类法和你所有的锦标赛设置。然后,您可以将其作为术语参考字段添加到内容类型:Competitor中。 (添加一个新的术语参考字段:“锦标赛”和小部件:选择列表


创建您的视图

  • 筛选条件->内容:类型(=参赛者)

  • 页面设置->路径:
    /tournaments/%

  • 上下文过滤器->内容:具有分类术语ID

  • 覆盖标题->
    %1


对于每个分类术语(锦标赛),此视图现在都有一个页面。例如,当您转到
http://yourdrupal/tournaments/1
它将仅过滤该锦标赛的视图

我附加了一个图像,以便您可以看到我如何配置我的视图


非常感谢你的书面回答。它完全符合我的要求,也让我更接近于完全理解上下文过滤器的工作原理。我仍然觉得这有点棘手,但你的帖子确实解释得很好!