【发布时间】:2011-12-07 03:07:55
【问题描述】:
我想实现一个方法来检查模型的实例是否只有 nil 或空属性,除了它的 id 或时间戳。
我使用了一种辅助方法,从 Hash 中删除一个键并返回剩余的哈希 (question 6227600)
class ActiveRecord::Base
def blank?
self.attributes.remove("id","created_at","updated_at").reject{|attr| self[attr].blank?}.empty?
end
end
我想可能有更简单、有效或更安全的方法来做到这一点。有什么建议吗?
【问题讨论】:
-
为什么要创建空实例?当您有信息填写时,只需创建实例即可。
-
您是否要检查模型对象是否已更改?例如,如果用户没有输入任何内容,那么它就不会改变。
标签: ruby-on-rails ruby activerecord