Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Drupal标志模块和获取uid_Drupal_Views_Flags - Fatal编程技术网

Drupal标志模块和获取uid

Drupal标志模块和获取uid,drupal,views,flags,Drupal,Views,Flags,恐怕我已经知道答案了,但我想知道是否有人能帮我确认一下 我已经在内容类型上设置了一个标志。当该内容标记一次时,我希望将其从主列表中删除,这样就不能再标记它(至少,不容易从主列表中标记)。我将此标志设置为“全局”标志,这样当有人标记它时,它将被标记为句号 现在我想设置一个视图,列出谁标记了什么,但是遇到了一个问题,即返回的UID对于每个内容都是0。我检查数据库,flag_内容表中的uid列为每个标志列出0。这是因为我将标志设置为“全局”,因此标志模块不记录标记用户的uid吗?如果是这样,他们不应该

恐怕我已经知道答案了,但我想知道是否有人能帮我确认一下

我已经在内容类型上设置了一个标志。当该内容标记一次时,我希望将其从主列表中删除,这样就不能再标记它(至少,不容易从主列表中标记)。我将此标志设置为“全局”标志,这样当有人标记它时,它将被标记为句号

现在我想设置一个视图,列出谁标记了什么,但是遇到了一个问题,即返回的UID对于每个内容都是0。我检查数据库,flag_内容表中的uid列为每个标志列出0。这是因为我将标志设置为“全局”,因此标志模块不记录标记用户的uid吗?如果是这样,他们不应该警告你吗


非常感谢。

这是真的,因为标志设置为“全局”,uid将始终为0。但是有一个问题

解决方法:

  • 您需要安装模块CCK和规则
  • 在要标记的内容类型中创建UserReference字段 通过您的全局标志,并将其设置为 不可见(如果您具有 字段,请记住将查看权限授予 您需要的任何用户)
  • 为“已标记节点”事件创建规则,然后设置 要用作引用的全局标志
  • 创建一个“填充字段”操作,您可以选择te USEREFERNCE 在之前和中创建的字段 “高级:指定字段值 使用PHP代码“youput:
    返回数组(0=>array('uid'=>$flagging\u user->uid))
    这会将标记用户的uid放入您的 用户引用字段
  • 在您的视图中,现在只需要显示userreference字段,然后 将查看已标记的每个节点的 它

  • 实现和使用视图非常简单。您需要安装和模块才能正常工作。

    因此,如果有人想知道,答案是肯定的。