drupal链接到依赖于参数的视图

drupal链接到依赖于参数的视图,drupal,arguments,drupal-views,Drupal,Arguments,Drupal Views,我有一个节点(节点a),其他各种节点(节点b/c/d/e)都引用它 我可以创建一个视图,将参数作为我正在查看的节点(节点a),并获取引用该节点的节点列表 基本上在节点a上查看节点b-e的列表 我只想为该节点的节点引用创建一个视图页面。但是我怎样才能把这个论点传给新的一页呢 谢谢 编辑:我为这个令人困惑的问题道歉 基本上我有一个电影节点。我有很多关于电影节点的评论 在电影节点上,我使用argument:content:review_获取该电影的评论列表 这很好,但是因为在电影节点上只有一些评论,我

我有一个节点(节点a),其他各种节点(节点b/c/d/e)都引用它

我可以创建一个视图,将参数作为我正在查看的节点(节点a),并获取引用该节点的节点列表

基本上在节点a上查看节点b-e的列表

我只想为该节点的节点引用创建一个视图页面。但是我怎样才能把这个论点传给新的一页呢

谢谢

编辑:我为这个令人困惑的问题道歉

基本上我有一个电影节点。我有很多关于电影节点的评论

在电影节点上,我使用argument:content:review_获取该电影的评论列表

这很好,但是因为在电影节点上只有一些评论,我需要一个页面,在那里我可以看到每部电影的所有评论。问题是将电影的参数从视图块(例如,电影的3个评论)传递到一个视图页面(包含所有评论)

理想情况下,视图页面的url应该是:/movies/movie name/reviews


我在欧文的回答中尝试了这种关系,但没有成功。

如果我理解你的意思,你想创建一个视图页面,允许你查看与父节点关联的节点(通过CCK节点引用字段)

设置视图后,只需将nid(或标题,或选择作为参数的任何字段)传递到URL

因此,假设您在以下位置设置了“视图”页面:

只需将参数传入:

以上(假设您的关系/参数正确)将显示所有与NID 5关联的节点

这是我用过的一本书

您会注意到视图上的“路径”设置是“movies/%/reviews”。我有两部电影《第一部电影》和《第二部电影》,每部都有一些评论。然后你可以使用,等等。。。查看评论的标题

编辑:好的,问题的澄清是,您有一个视图块,其中显示特定于电影的评论列表。此外,您还希望“更多…”链接到一个视图页面,该页面显示特定于该电影的所有评论

这可以通过Views管理员实现,但确实需要一些PHP代码

  • 视图块的设置与上面的视图页面类似
  • 覆盖视图块参数(查看)节点:Title,并在“参数不存在时要采取的操作”下,选择“提供默认参数”->“PHP代码”
  • 您使用的代码是:

    if (arg(0) == 'node' && is_numeric(arg(1) ) ) {
      $node = node_load(arg(1) );
      return str_replace(' ', '-', strtolower($node->title) );
    }
    

  • 实际上,视图块的行为是相同的(需要一个电影节点标题),但将使用上面的代码尝试从URL中提取标题(注意,这对路径别名很有效)。电影节点标题也以“movies/[Movie title]/reviews”的格式放置在“更多”链接中(参见上图),该格式将按预期链接到“视图”页面。

    我是否正确理解此问题

    真正的问题是块中的“更多”链接没有链接到正确的视图?

    换句话说,如果您的视图是“movie_reviews”,并且在movie node页面上有:movie_reviews->block added on the side,在这个movie_reviews->block中,“more”链接会将访问者导向movies/all/reviews

    您是否考虑过将这些更改模板化?(操纵块内的链接以使用当前正在查看的电影节点的节点。) 积木很容易成为主题


    如果我认为这对您的站点有意义,我可以提供有关如何实现类似内容的参考。

    谢谢,有没有办法在url中包含节点标题?是的,只需使用节点标题作为参数,而不是nid。还有一个将空格转换为破折号的选项,用于URL目的。我在答案中添加了一个例子。谢谢你,但我不明白这是怎么回事。我的参数不是nid,而是节点引用字段。如果我把标题设为论点,那就什么都没有了。谢谢你的帮助。嗯,你的关系应该是节点引用字段,然后你的参数应该是节点nid/title(使用节点引用字段的关系)。谢谢,不过我还是不明白。即使我创建了一个关系,它也不会按引用该节点的节点过滤。因此,我使用关系为节点标题添加了一个参数。如果参数不存在,我要采取的操作是:显示所有值。我曾经给它默认值:来自url的节点id,但这会导致它显示(不正确的)nid。但这会导致参数为“all”,而不是标题名。只是不知道这是怎么回事。谢谢