问题标签 [merit-gem]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
126 浏览

ruby-on-rails - ruby on rails 值得宝石镶嵌等级

有没有办法改变用户级别,比如

user.set_rank(:level => 4) ?

我需要更改用户级别,但重新定义排名规则并运行此处建议的内容 优点宝石​​可以重新计算声誉并重新评估徽章和排名吗?不起作用。

有任何想法吗?

0 投票
1 回答
108 浏览

ruby-on-rails - Merit gem cron 作业检查和删除临时徽章

我有这样的徽章规则;

用户在发送评论后将丢失徽章。但是,如果她/他不发送评论,她/他将永远拥有徽章。

是否可以检查临时徽章并删除不再有效的徽章?

0 投票
1 回答
47 浏览

ruby-on-rails - 使用 delay_job 和 tute/merit 延迟徽章分配

我正在使用优点 gem 为用户分配徽章。

在我的 badge_rules.rb 文件中,我有:

我在 User 模型中创建了一个方法“model_method”,它做同样的事情helper_method,所以我可以毫无问题地做到这一点:

我想知道是否有某种方法可以在后台使用 delay_job 运行此过程,因为helper_method它非常繁重。我已经尝试过以下在后台运行 model_method 的方法,但没有授予徽章:

和:

优点 gem 中检查grant_on block&条件是否满足的代码没有延迟,所以我不太确定如何解决这个问题。提前致谢。

0 投票
1 回答
235 浏览

ruby-on-rails - 使用功绩宝石可观察到的徽章事件

我对似乎太明显/太容易的优点宝石有疑问,但很难弄清楚。

我正在使用示例可观察类,它适用于点。每点变化,注册的观察者都会收到更新。但是,对于徽章,不会发生此类更新。

我如何将徽章分配给用户可能是原因,但我不确定为什么。再次使用wiki 中的示例add_badge,我正在查看用户的总分并使用该方法为该用户创建适当的徽章。这工作正常。也就是说,按预期计算积分,按预期创建徽章,并且用​​户的积分和徽章是正确的。

问题是可观察类没有收到这些徽章分配的任何更新/事件。我希望每个add_badge人都能生成通知。

没有观察到徽章添加的一些原因是什么?

0 投票
1 回答
150 浏览

ruby-on-rails - 使用 Rails 的排行榜 API 后端

我正在尝试围绕排行榜的概念设计一个 API 后端(用于移动应用程序)。

一些要求:

  • 我只对在验证某些规则后分配分数感兴趣
  • 后端应该是多应用程序:app1 应该有一些规则,app2 可以有另一组规则
  • 后端接收用户在移动应用程序上执行的操作,并且必须验证这些操作是否有效并分配积分
  • 规则可以是这样的:

如果这是您在 24 小时内第一次看到操作 A,则给用户 10 分

如果操作 B 发生,则给用户 10 分,但如果您每周看到操作 B 超过 10 次,则不给分

  • 必须有先前操作的日志,以便可以将其报告给移动应用程序

  • 计算点数、排行榜分数和报告(在给定的时间范围内)

我研究了优点,但我不明白一个模型是否可以有多个点规则文件(例如:userA 属于 appA,所以 rulesB 不适用于他),以及是否有每个动作的踪迹或只是当前分数。

简而言之:所有这些都值得支持吗?如果没有,你有什么建议?

0 投票
1 回答
73 浏览

ruby-on-rails - 值得红宝石宝石不使用条件语句

优点 ruby​​ gem 不会向添加了“user.passion.present”的用户添加积分。没有它也可以工作。我使用 Devise 和 Merit gems 设置了一切。除了这个,一切似乎都有效。

0 投票
1 回答
48 浏览

ruby-on-rails - 为什么 `merit_actions` 出现在此查询中但未指定?

在生产 Rails 4.2 应用程序中,每当调用 Events#show 页面时,我都会看到以下日志错误。

PG::UndefinedTable: ERROR: missing FROM-clause entry for table "actions" SELECT "merit_actions".* FROM "merit_actions" WHERE (actions.trackable_type = 'Comment' AND actions.trackable_id in (NULL))

我无法弄清楚为什么/如何创建此查询以及调试问题。

该查询应该基于此Railscast松散地构建活动提要。Event 模型有一个多态的 Actionable 关联,通过它关联了许多 Comments 和 Photos。

在事件模型中是以下方法

如您所见,Action 模型被引用,但没有引用merit_actions导致查询中的问题。

我确实安装了Merit gem

但不在事件模型上。

为什么这个查询引用merit_actions,我该如何调试呢?这对我来说没有意义。

0 投票
1 回答
91 浏览

ruby-on-rails - 带优点宝石的 Rails 公寓

我使用信誉引擎 Merit,并为多租户添加了公寓。我想排除优点模型和表格。

以下行生成错误:

Merit::Badge(id, name, level, description, custom_fields) 的未定义方法“table_name”

谢谢你的帮助。

0 投票
0 回答
130 浏览

ruby-on-rails - Ruby on Rails - Merit Gem grant_on 未被触发

所以我刚刚安装了优点 gem,并一直在使用它在我的应用程序中实现徽章。我将文件中的徽章定义config/initializers/merit.rb为:

此徽章在用户创建时奖励给用户。用户是在方法user_controller.rb内创建的create

由于某种原因,当创建新用户时,徽章永远不会得到奖励。当我键入时Merit::Badge.find(1),我看到徽章确实已定义。但是,当我User.first.badges在控制台中键入时,它会返回一个空数组。为什么用户注册时没有奖励徽章?如果您需要任何其他信息来帮助解决此问题,请告诉我。

编辑以提供更多信息

这是我在Merit::Badge.find(1).inspect控制台中运行时得到的结果:

0 投票
1 回答
196 浏览

ruby-on-rails - Merit rails 4 not working for update action

Just got the Merit gem up and running with my rails 4 app.

So far, a user receives the first badge upon creating a subarticle.

The second badge I am trying to award is when that subarticle actually gets approved, which can only be done by an admin. I have tried using subarticle#update as the action, but it is not awarding the user the badge. Maybe it has to do with the admin updating the subarticle from the admin panel (rails admin gem)?

Here is my badge in the initializer:

and here are the rules:

Any suggestions? Still new to this gem so maybe its a simple mistake.