Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 3 Rails-限制匿名用户更新记录的时间_Ruby On Rails 3 - Fatal编程技术网

Ruby on rails 3 Rails-限制匿名用户更新记录的时间

Ruby on rails 3 Rails-限制匿名用户更新记录的时间,ruby-on-rails-3,Ruby On Rails 3,我不知道这是否可行,但我正在编写一个允许匿名用户创建记录并更新记录的应用程序。现在我只希望他们能够在创建记录后几分钟内更新记录 有没有什么超时方法可以使用,比如说cancan 或者更好的选择是将模型与用户的IP地址关联,只允许相同的IP编辑记录?因为最终目标是防止恶意用户编辑任何和所有记录 谢谢您可以对自己的自定义函数使用回调验证。 如果使用rails generate命令创建模型,则每个模型都会在数据库中的列中创建一个created\u Model Book before_update

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

有没有什么超时方法可以使用,比如说cancan

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


谢谢

您可以对自己的自定义函数使用回调验证。 如果使用rails generate命令创建模型,则每个模型都会在数据库中的列中创建一个
created\u

Model Book
    before_update: check_time

    def check_time
        if created_at < 10.seconds.ago
            return false
        else 
            return true
        end
    end
end
模型书
更新前:检查时间
def检查时间
如果在<10秒前创建
返回错误
其他的
返回真值
结束
结束
结束