我试图弄清楚如何为Resource对象设置串行和关键属性。基本方法DataMapper :: Resource.attributes返回一组属性,但它没有说明类型。当然我可以通过系统调用来检查它:obj.class,但是无法理解如何从资源实例获取类型信息。
示例:
class Foo
include DataMapper::Resource
property :id, Serial
property :title, String, :required => true
property :created_at, Time, :required => true
property :flagged, Boolean, :default => false
end
那么,有没有办法获取有关资源内部类型的信息?
答案 0 :(得分:1)
不久前,我自己想出来了。所有模型字段基本上都是DataMapper :: Property
的实例所以,你需要的只是调用ModelName.properties并获得如下选项:index,:key等。
说明:http://yardoc.org/docs/datamapper-dm-core/DataMapper/Property