3
这招作品有“的has_many”的关系,但失败“embeds_many”。有任何想法吗?上创建访问父从嵌入文档(Mongoid)
class Country
include Mongoid::Document
field :name, type: String
embeds_many :cities
end
class City
include Mongoid::Document
field :name, type: String
field :full_name, type: String, default: ->{ "#{name}, #{country.name}" }
embedded_in :country
end
1.9.3p392 :025 > c = Country.find_or_create_by(name: 'foo')
=> #<Country _id: foo, name: "foo">
1.9.3p392 :026 > c.cities.find_or_create_by(name: 'bar')
NoMethodError: undefined method `city' for nil:NilClass
因此,它无法上线 “字段:FULL_NAME,类型:字符串,默认: - > { ”#(名称),#{country.name}“” becouse国家未定义的那一刻
错误消息“未定义的方法'城市”的零:NilClass”不符合您的默认的解释。如果您删除默认设置,它会通过吗? – 2013-04-05 19:51:16
是其通。未定义的方法'城市”的零:NilClass意味着国家是零 – 2013-04-07 16:00:36