Ruby on rails Ruby on Rails,habtm收集方法不收集?

Ruby on rails Ruby on Rails,habtm收集方法不收集?,ruby-on-rails,has-and-belongs-to-many,Ruby On Rails,Has And Belongs To Many,我尝试在删除时将数据备份到yaml存储区,如下所示: DeleteProject.create!(:data => { :project => project.attributes, :domains => project.domains.collect(&:attributes), :databases => project.databases.collect(&:attributes) }.to_yaml) 然而,尽管项目和域数据存储

我尝试在删除时将数据备份到yaml存储区,如下所示:

DeleteProject.create!(:data => {
  :project => project.attributes, 
  :domains => project.domains.collect(&:attributes), 
  :databases => project.databases.collect(&:attributes)
}.to_yaml)
然而,尽管项目和域数据存储良好,但数据库总是返回空白。这种关系是通过

  • 拥有且属于多个:数据库
  • 拥有且属于多个项目

我在这一点上走到了死胡同,因为我不知道为什么它不能从project.databases传递当前数据。任何洞察都会很棒,谢谢

好的,因此我通过以下操作修复了此问题:

  • 有很多:数据库连接
  • 有多个:数据库,:到=> :数据库连接
要使用的更新模型有很多,然后更新的连接表不再是数据库项目,而是数据库连接

class DatabaseConnection < ActiveRecord::Base
  belongs_to :projects, :class_name => "Project",
                        :foreign_key => "project_id"
  belongs_to :databases, :class_name => "Database",
                         :foreign_key => "database_id"
end
类数据库连接“Project”, :外键=>“项目id” 属于:数据库,:class\u name=>“数据库”, :foreign\u key=>“数据库\u id” 结束
您是否有过滤数据的默认\u范围???没有过滤数据的内容,所有信息都在那里,因为在显示项目操作中使用的信息与请求完全相同。