【问题标题】:How to limit the amount of User Points users get?如何限制用户获得的用户积分数量?
【发布时间】:2013-10-03 09:15:37
【问题描述】:

我有一个内容类型“内容”,其中包含字段“值”(一个整数)和一个名为“发布内容并授予用户点数”的标志。每次使用此标志标记内容时,我想授予内容的作者一些用户积分,等于“价值”字段中的值,但最多为 5。

我有一个关于“最大 5”条件的问题。我用额外的条件“数据比较”制定了 2 个单独的规则:一个具有 [标记节点:字段值低于 6],另一个具有 [标记节点:字段值大于 5]。 (请注意,我可以在此处选择“字段值”!)是否可以仅在 1 条规则中执行此操作?

注意:我的“值”字段也有问题。请参阅:Grant user User Points equal to value of certain field

【问题讨论】:

    标签: drupal-7 flags drupal-rules userpoints


    【解决方案1】:

    我为我的问题找到了解决方案;也许它也可以帮助其他人。我实际上创建了一个“更正”规则,该规则在用户获得用户点数并且“内容”节点被标记为“发布内容并授予用户点数”后被激活。这就是我设置规则的方式:

    活动

    • 用户获得了用户积分
    • 已在“发布内容并授予用户积分”下标记了一个节点

    然后,我检查了点数是否高于5。

    条件

    • 数据比较:[userpoints-transaction:points]大于5

    最后,我计算了添加的用户点数和 5 之间的差值,并从用户的用户点数中减去了这个值。

    动作

    • 计算一个值:[userpoints-transaction:points]“-”5(变量名:差异)
    • 计算一个值:[difference] "*" -1(变量名:减法)
    • 向用户授予积分:授予[userpoints-transaction:user]substract积分

    我必须插入第二个计算,否则我无法从用户的用户点中减去“差异”。

    【讨论】:

      猜你喜欢
      • 2021-08-02
      • 2013-05-10
      • 1970-01-01
      • 1970-01-01
      • 2016-07-14
      • 2014-07-08
      • 1970-01-01
      • 2012-05-25
      • 1970-01-01
      相关资源
      最近更新 更多