在mongoid上从belongs_to迁移到has_and_belongs_to_many而不会丢失数据

时间:2016-04-13 15:23:01

标签: ruby-on-rails mongoid has-and-belongs-to-many migrate mongoid4

我使用Rails 4.1和mongoid 4.0 目前,我有一个关系1-N

class Tenant
  include Mongoid::Document
  belongs_to :tenant, index: true
end

class Experience
  include Mongoid::Document
  has_many :experiences, dependent: :nullify
end

我想将此关系更改为N-N。为此,我将两个模型更改为:

class Tenant
  include Mongoid::Document
  has_and_belongs_to_many :tenants, index:true
end

class Experience
  include Mongoid::Document
  has_and_belongs_to_many :tenants, index:true
end

但现在我没有以前的数据。

1 个答案:

答案 0 :(得分:0)

我最终在控制台上做了类似的事情:

e = Experience.last
e.tenant_ids = [e.attributes[:tenant_id]]

了解所有经历。