【发布时间】:2015-02-06 11:06:56
【问题描述】:
我想向 ActiveRecord::Relation 添加一个方法,该方法返回一个单数结果,并在有 0 或 >1 个结果时引发异常。 在SO about overriding find 找到了一些我改编的东西,但没有工作,导致找不到方法
module FindOne
def self.included(base)
def find_exactly_one
if self.size > 1
raise "Expected exactly one, got #{self.size}"
end
first!
end
end
end
ActiveRecord::Relation.send :include, FindOne
有什么想法吗?
ruby 2.1.5 轨道 4.0
【问题讨论】:
标签: ruby-on-rails ruby activerecord