我担心我已经知道了答案,但我想知道是否有人可以为我确认这一点。
我在内容类型上设置了一个标志。当这段内容被标记一次时,我希望它从主列表中删除,以便它不能再被标记(至少,不容易从主列表中标记)。我将此标志设置为“全局”标志,以便当有人标记它时,它会被标记为句点。
现在我想设置一个视图,列出谁标记了什么,但是遇到了每个内容返回的UID为0的问题。我检查数据库,flag_content表中的uid列为每个标志列出0。这是因为我将标志设置为“全局”,因此标志模块不记录标记用户的uid吗?他们不应该警告你,如果是这样吗?
非常感谢。
答案 0 :(得分:1)
确实如此,因为标志设置为“全局”,uid将始终为0.但是有一个workaround。
解决方法:强>
- 您需要安装模块CCK和规则。
- 在要标记的内容类型中创建一个usereference字段 通过您的全局标志,您将其设置为 不可见的(如果你有权限的话 字段记得给视图权限 无论你需要什么用户)。
- 为“已标记节点”事件创建规则,然后设置 你想要的全球国旗作为参考。
- 创建一个“填充字段”操作,选择te usereference 您之前和之后创建的字段 “高级:指定字段值 用PHP代码“你把:
return array(0 => array('uid' => $flagging_user->uid));
这将把标记用户的uid放入你的 用途参考领域。- 在您的视图中,您只需要显示usereference字段即可 将查看已标记的每个节点 它。
醇>