我最近开始在一些项目中使用DataMapper&总的来说,我觉得它太棒了。但我有一个关于使用它的特定方面的问题。
我知道如果我的模型具有枚举属性(property :whatev, Enum[ :foo, :bar ]
),我可以致电Model.whatev.options[:flag]
&获取特定枚举的所有不同可能值。我想知道是否有人知道(或者可以指出我正确的方向)是否有Discriminator
属性类型的类似内容?
即。有没有办法称这个特定的财产和&让它返回各种选项
答案 0 :(得分:0)
有点晚了,但到了。给定模型定义,例如:
class Foo
include DataMapper::Resource
property :id, Serial
property :type, Discriminator
end
class Bar < Foo; end
class Baz < Foo; end
您可以看到子类:
Foo.descendants.entries
返回一个数组:[Bar, Baz]
。