我有两个型号
class Supplier < User
include Mongoid::Document
embeds_many :images
accepts_nested_attributes_for :images
end
class Image
include Mongoid::Document
embedded_in :supplier
end
当我以嵌套形式保存图像时,它会被保存在供应商集合中,即
s = Supplier.first
s.images #some Image records
但问题是图像采集本身仍然是空的,即
Image.count # gives 0
答案 0 :(得分:1)
Image
模型的文档存储在Supplier
模型的文档中。所以基本上没有在mongo中创建名为images
的集合。在你的mongo控制台中检查一下。您只会收集suppliers
个收藏品,而不会收集images
个收藏品。
如果您想直接访问图像而无需访问特定图像,则可以执行此操作
Supplier.all.pluck(:images)
#It will give you an array of all images
或实施has_many
class Supplier < User
include Mongoid::Document
has_many :images
accepts_nested_attributes_for :images
end
class Image
include Mongoid::Document
belongs_to :supplier
end