Drupal 视图/标志关系参数难题

Drupal 视图/标志关系参数难题,drupal,Drupal,我目前正在努力解决一个“观点-关系-争论”难题 我有一个名为Favorites的标志设置,这样用户就可以查看最喜欢的网站内容。我还使用内容配置文件和Pathauto。现在,我将视图内容附件添加到用户内容配置文件中,以显示用户选择的收藏夹 Pathauto的默认内容配置文件路径是:member/[title raw]——因此用户配置文件页面的典型别名是:member/john smith(请记住,配置文件节点id与用户id不同) 以下是我的视图设置: 关系:标志:收藏夹-由:任何用户 辩君:这就是

我目前正在努力解决一个“观点-关系-争论”难题

我有一个名为Favorites的标志设置,这样用户就可以查看最喜欢的网站内容。我还使用内容配置文件和Pathauto。现在,我将视图内容附件添加到用户内容配置文件中,以显示用户选择的收藏夹

Pathauto的默认内容配置文件路径是:member/[title raw]——因此用户配置文件页面的典型别名是:member/john smith(请记住,配置文件节点id与用户id不同)

以下是我的视图设置: 关系:标志:收藏夹-由:任何用户

辩君:这就是我的理解力崩溃的地方。我需要以某种方式从当前配置文件的URL中获取用户名或uid

有什么正确的论据可以让这件事发生吗?我一直在尝试所有发生在我身上的可能性,到目前为止没有运气


谢谢

如果您愿意使用定制的php代码来获取参数,我是您的朋友。您可以使用arg(0)将您正在访问的别名传递给它。“/”.arg(1)

  • 在视图设置中,单击参数中的+以添加参数
  • 在参数设置中,从“组”下拉列表中选择“用户”
  • 勾选“用户名”
  • 单击“添加”按钮
  • 保存您的视图
  • 只要这是您的唯一参数,您只需在URL中传入用户名。在您的示例中,请参见john smith的视图,您可以导航到

    这将适用于页面类型视图

    如果要创建块视图类型,则不能在URL中传递参数。对于块类型视图,请执行以下步骤:

  • 在视图设置中,单击参数中的+以添加参数
  • 选择“PHP代码”作为“默认参数类型”
  • 为PHP代码输入以下内容:

    如果(arg(0)='viewname'&&arg(1)!=''){ 返回arg(1); }


  • 现在,该块将从URL获取参数,与页面视图类似。

    感谢您的回复。我确实知道arg()函数,但不能使它在这个实例中工作。如果您知道使其在我的场景中工作的具体方法,请指定。抱歉。我的代码将返回内容配置文件的nid。您需要它的用户uid。尝试通过节点加载加载节点,然后从节点对象返回用户。我希望你能找到出路…谢谢你的详细解释,迈克!不幸的是,没有工作。我需要从一个更简单的基础上开始这方面的实验,并在一个工作原型上构建复杂性。因此,我将从没有url别名的核心用户配置文件开始,然后从那里开始。Michael D,您可能希望尝试创建一个页面类型视图,列出用户的收藏夹。然后,试着把它变成一个块,按照我提供的信息工作。此时,您可以将该块配置为仅显示在用户配置文件页面上。