我开始在我的项目中使用mongoid gem,我对它如何存储和获取数据库上的信息有点困惑。我的模型中有特定类型的字段,但是当我从数据库中获取它时,它返回一个哈希。这是我的模型:
服务.rb
class Service
include Mongoid::Document
field :username, type: String
field :strategy, type: Strategy
field :design, type: Design
end
策略.rb
class Strategy
include Mongoid::Document
field :name, type: String
field :description, type: String
field :resources, type: Resources
field :scalability, type: Scalability
field :localization, type: Localization
field :contact, type: Contact
end
如果我初始化一个新服务@service,并执行@service.class,它会返回正确的服务,但是如果我尝试执行@service.strategy.class,它会返回哈希,而不是策略,就像我期待的那样。我在mongoid 手册上阅读了“自定义字段序列化”,我认为这可以让我做我想做的事。但是我想知道是否没有其他方法可以轻松做到这一点,因为我有很多模型要更改。