1

我希望将少数对象中的错误记录到数据库表中,比如说“错误”。

理想情况下,我想声明它,以便它可以以类似于“验证”或“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)

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

4

1 回答 1

1

听起来您正在寻找Observer。为您的班级创建一个观察者,然后使用after_validation 活动记录回调来运行记录您的错误的代码。

于 2012-10-29T12:20:19.617 回答