【发布时间】:2011-05-06 17:19:03
【问题描述】:
在不进一步规范化数据库的情况下抽象 ActiveRecord 属性的最佳方法是什么?
例如,假设有一个名为addresses 的数据库表,其中包含zip_code 列和一个确定邮政编码是否有效的方法:
class Address < ActiveRecord::Base
def zip_code_valid?
..
end
end
我希望有:
class Address < ActiveRecord::Base
..
end
class ZipCode
def valid?
..
end
end
当我执行Address.find(1).zip_code 时,它返回一个ZipCode 与一个字符串。我不希望通过创建一个名为zip_codes 的表来规范化数据库。这个例子是假设的,我目前没有一个真实世界的例子;我只是想知道我怎么可能做到这一点。
谢谢。
【问题讨论】:
标签: ruby-on-rails activerecord abstraction abstract-data-type