ruby-on-rails - 使用类似after_save的方法声明处理程序和处理错误

标签 ruby-on-rails error-handling

我正在尝试将少数对象中的错误记录到db表中,比如说“错误”。

理想情况下,我想对其进行声明,以便可以以类似于“验证”或“attr_accessible”的方式将其添加到对象定义中。例如:

def SomeObject

    validate: :someMember

    on_error: :someCallback

    def someMethod

    end
end

我将在哪里开始实现这种性质的东西,或者可以选择一种普遍接受的方法来进行此类事情?

扩大一点:

假设我解析了一个文件,其内容定义了ActiveRecord扩展名(ActiveRecord::MyClass),并且发生以下错误之一。
1. Type mismatch: self.someMember is STRING, expected BOOLEAN.
2. File badly formatted. Some line isn't formatted as expected.
3. Validation failed (ActiveRecord)

对于这些错误,我想使用(通常)在对象定义顶部找到的指令类型语法来记录这些错误。

最佳答案

听起来您正在寻找Observer。使您的类(class)成为观察员,然后使用after_validation active record callback运行记录您的错误的代码。

关于ruby-on-rails - 使用类似after_save的方法声明处理程序和处理错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13120024/

相关文章:

ruby-on-rails - accepts_nested_attributes_for 停止我的子表单渲染?

python - 我能找出导致我的 Python MemoryError 的分配请求吗?

ruby-on-rails - 使用heroku_san gem 时出错:您的 Ruby 版本是 x.x.x,但您的 Gemfile 指定了 x.x.x (Bundler::RubyVersionMismatch)

matlab - 在 Matlab 中将函数传递给另一个函数时出现“输出参数太多”错误

r - 函数可以通过tryCatch和好友粉碎吗?

PHP超时错误处理

error-handling - 如何从grako/TatSu获取简洁的语法错误消息

ruby-on-rails - pdfkit 不设置 pdf 样式

ruby-on-rails - Rails 3.0 开发用于部署在另一个操作系统上的 SQL 服务器上

ruby-on-rails - 如何在 Rails 中组织复杂的回调?