在用户ID等于当前用户的节点上进行过滤


19

在Drupal 6中,您可以有一个过滤器node.uid = current user。您如何在Drupal 7中做到这一点?

Answers:


23

您需要将过滤器添加为“上下文”(高级),您可以在其中提供默认参数。如果上下文是针对某个用户(例如节点作者)的,则可以选择诸如登录用户的ID之类的内容。

屏幕截图


1
我一直使用关系,但也会关注上下文。View很棒。
Citricguy 2012年

要修改约100个视图。:)感谢您提供@googletorp的详细信息。
Citricguy 2012年

1
您注意到上下文过滤器中的第一行文本了吗?“当过滤器值不在URL中时”,所以我已经尝试过了,如果URL中没有用户ID,则可以使用,但是如果用户a正在查看某个用户b的个人资料,则该视图将使用用户b ID不是用户
乔治·马科特(George marcotte)2012年

20

您需要编辑视图,转到“高级”列(最右侧)并添加新的关系。

添加关系

您将特别需要添加“内容:作者”关系。

接下来,您需要在“过滤器”下添加“用户:当前”过滤器。

添加过滤器

现在,您应该能够过滤当前登录用户拥有的内容。


1
在进行此工作时,这比使用上下文过滤器要慢,因为您需要创建联接。它可能只慢了几毫秒,但没有理由浪费资源。
googletorp

这将为我的一堆查询节省多于几毫秒的时间。:) 谢谢你的澄清。
Citricguy 2012年

-2

您可以简单地添加

“过滤器”条件中的“用户:当前”。


没有足够的解释这里的人跟随
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.