ruby-on-rails – Rails 4,更好地记录回滚?
发布时间:2020-12-17 03:16:51 所属栏目:百科 来源:网络整理
导读:Rails让我发疯的一件事就是我会在控制台中看到一条ROLLBACK消息,没有任何理由附加到回滚上.这经常导致我寻找一些验证错误,但是有一个更详细的消息会很高兴. 有没有为db回滚启用更详细的日志记录? 解决方法 您可以使用 after_rollback回调. 创建一个名为Roll
Rails让我发疯的一件事就是我会在控制台中看到一条ROLLBACK消息,没有任何理由附加到回滚上.这经常导致我寻找一些验证错误,但是有一个更详细的消息会很高兴.
有没有为db回滚启用更详细的日志记录? 解决方法
您可以使用
after_rollback回调.
创建一个名为RollbackLogger的模块,并将其放在app / concerns目录中 module RollbackLogger extend ActiveSupport::Concern included do after_rollback :log_status,on: [:create,:update] end def log_status Rails.logger.info "Rollback caused by: #{self.errors.full_messages}" end end 然后在每个ActiveRecord模型中包含此模块: class Foo < ActiveRecord::Base include RollbackLogger end 编辑: 正如Mr. Damien Roche建议的那样,您可以在config / initializers目录中创建一个新文件,并添加以下行: ActiveRecord::Base.send(:include,RollbackLogger) 所有型号都将自动包含RollbackLogger模块. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |