Ruby on rails Schema.rb文件的用途是什么?

Ruby on rails Schema.rb文件的用途是什么?,ruby-on-rails,Ruby On Rails,Schema.rb文件的具体用途是什么?它是运行迁移时生成的文件。据我所知,它有两个用途: 您的数据库架构位于一个位置,可以查看和审阅 您可以使用rakedb:schema:load一次性加载数据库,而无需遍历迁移过程 每次执行迁移时都会复制此文件。它复制数据库的整个架构。Rails迁移中的某些命令也使用它来避免逐个重做所有迁移(例如在迁移重置的情况下) 它也是唯一一个可以同时查看所有表以供列引用的地方。但是我建议您使用gem注释,以便用所有列名记录您的模型。这样做比每次需要模型的DB结构的详

Schema.rb文件的具体用途是什么?

它是运行迁移时生成的文件。据我所知,它有两个用途:

  • 您的数据库架构位于一个位置,可以查看和审阅
  • 您可以使用
    rakedb:schema:load
    一次性加载数据库,而无需遍历迁移过程

每次执行迁移时都会复制此文件。它复制数据库的整个架构。Rails迁移中的某些命令也使用它来避免逐个重做所有迁移(例如在迁移重置的情况下)


它也是唯一一个可以同时查看所有表以供列引用的地方。但是我建议您使用gem注释,以便用所有列名记录您的模型。这样做比每次需要模型的DB结构的详细信息时都要转到schema.rb更容易。

schema.rb的一个很好的用法是,每当我们运行rake测试时,它都会立即使用schema.rb准备测试数据库(无需运行迁移)