2011-07-08 24 views
0

我不知道这是否可能,但我正在编写一个允许匿名用户创建记录并更新它们的应用程序。现在我只希望他们能够在创建后的几分钟内更新记录。Rails - 限制匿名用户更新记录的时间

是否有任何一种超时方法我可以用,比如说cancan例如?

或者更好的选择是将模型与用户的IP地址相关联,并且只允许相同的IP编辑记录?由于最终目标是防止恶意用户编辑任何和所有记录。

谢谢

回答

0

您可以使用自定义函数进行回调验证。 如果使用rails generate命令创建模型,则每个模型在数据库中都有一个created_at列。

Model Book 
    before_update: check_time 

    def check_time 
     if created_at < 10.seconds.ago 
      return false 
     else 
      return true 
     end 
    end 
end