gpt4 book ai didi

ruby-on-rails - 如何在我的代码库中忽略/抑制特定类型的异常(ActiveRecord::ReadOnlyRecord)

转载 作者:行者123 更新时间:2023-11-29 13:14:27 25 4
gpt4 key购买 nike

我正在尝试创建我的应用程序的只读版本,并让猴子修补 ActiveRecord::Base 以便它在所有模型中为 readonly? 返回 true:

module ActiveRecord
class Base
def readonly?
true
end
end
end

这导致 ActiveRecord::ReadOnlyRecord 异常在我试图写入数据库的任何地方被引发。有没有办法在代码中的任何地方忽略这个异常并继续执行代码。某种覆盖异常类的方法,使其什么都不做,即异常被抑制。

最佳答案

您可以尝试这样的操作,而不是将所有模型设置为只读:

class ApplicationRecord < ActiveRecord::Base
before_commit do
raise ActiveRecord::Rollback, 'Read-only'
end
end

关于ruby-on-rails - 如何在我的代码库中忽略/抑制特定类型的异常(ActiveRecord::ReadOnlyRecord),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50878226/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com