首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何防止在用户通过测试后再次授予Userpoints?

如何防止在用户通过测试后再次授予Userpoints?
EN

Drupal用户
提问于 2014-07-13 10:58:50
回答 2查看 212关注 0票数 1

我正在使用测验用户点模块。

当用户进行测试后,分数就会被授予。但是,如果进行多次测试,分数也会被多次授予。例如;

  • 点数平衡:0
  • 测验结束后(第一次),积分平衡: 10
  • 再做同样的测验,积分平衡变成: 10+10=20

我不希望它是累加的。我怎么才能阻止这一切?

EN

回答 2

Drupal用户

发布于 2014-07-14 04:07:53

您可以使用规则模块来删除该角色,该角色有权在测试完成后进行测试。

票数 0
EN

Drupal用户

发布于 2017-09-14 14:15:46

正如前面的答案所建议的那样,使用规则模块确实是回答这个问题的一种方法。特别是现在已经有了7.x-5.x版本的测验模块,它允许实现各种规则逻辑以进行查询。但是,如果您有许多查询,如果您使用前面的答案中所建议的方法,那么您也将得到许多角色。

因此,我建议您使用规则模块和标志模块的组合。以下是如何做到这一点的总结:

  • 使用国旗模块创建跟踪传递的查询标志。
  • 使用规则模块实现这个逻辑:如果测试节点(与此测试结果有关)尚未被标记(通过为其创建的标志),并且测试结果至少等于该测试的通过率,则这是该用户第一次通过测试。这时,测试节点将被标记。从那时起,使用规则条件来检查当前用户是否标记了quiz节点。根据这个规则条件,你决定是或不执行一些规则动作(S),例如授予分数(但只有一次)。

有关更多细节,请参阅我的回答中的"在授予用户分数之前,如何检查用户是否已经通过了测试?",其中还包括标记配置的导出和使其工作的规则。

PS:我假设这个问题是关于D7的。

票数 0
EN
页面原文内容由Drupal提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://drupal.stackexchange.com/questions/123391

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档