我在一个项目中使用 STI,我希望每个模型都有一个返回哈希的方法。该哈希是该模型的特定配置文件。我希望每个子模型都检索其父模型的哈希并将其添加到自己的哈希中。下面是一个例子
class Shape
include Mongoid::Document
field :x, type: Integer
field :y, type: Integer
embedded_in :canvas
def profile
{ properties: {21} }
end
end
class Rectangle < Shape
field :width, type: Float
field :height, type: Float
def profile
super.merge({ location: {32} })
end
end
我试图弄清楚如何让 Rectangle 的 profile 方法返回 Shape 的 + 它自己的。它应该导致
(properties => 21, location => 32)
知道如何从继承的孩子访问父母吗?只是超级吗?最近几天一直坚持这个。非常感谢任何帮助!