我需要做的就是奖金制度。假设我有一个用户和帖子数量。当用户对帖子(即100,300,550等)达到一定的数量时,我想给他新的等级和“金钱”奖金。但是如果我在新的帖子保存中检查它,我怎么不两次或多次五次这样的奖励(即如果帖子> n {给予奖励;})。我怎么才能让这种情况发生一次?
我想在bonus_given
这样的DB中有一个单独的列,但是如何在不同的排名中使用它?我不知道为什么,但我猜这个问题的解决方案。
PS。我用ruby作为我的语言。
答案 0 :(得分:1)
我认为你自己给出了答案。您为用户提供了新的排名。您可以检查用户是否需要晋升到更高级别,如果是这种情况,请提升他并给予奖金。
所以例如: Rank1是< 100 Rank2是> = 100&& < 300 Rank3是> = 300&& < 550 Rank4是> = 500
如果用户保存了他的第100个帖子,并且是Rank1,他应该被提升到Rank2并获得“金钱”奖金。
这样,如果您稍后决定添加更多等级/不同范围,您将更加灵活。
答案 1 :(得分:0)
正如你所说:
在新帖子保存
上查看
只需使用==
代替>
。
if posts == n { give bonus; }