【问题标题】:schema.rb not updating after transfer to a new machine转移到新机器后 schema.rb 不更新
【发布时间】:2009-12-14 18:14:15
【问题描述】:
我将一个项目转移到一台新机器上。一切正常。我可以运行迁移,它们会更新 mysql 数据库。但是,schema.rb 文件不会确认更改。我检查了 schema.rb 的读/写权限是否正常。有没有人知道什么可能导致这个问题。我正在使用 Rails 2.3.5 版。 rake:redo rake:rollback 不起作用,因为架构不知道数据库中的更改。再次运行 rake db:migrate 什么也不做。
【问题讨论】:
标签:
ruby-on-rails
ruby
schema
migration
【解决方案1】:
答案是我的 development.rb 文件中有以下行
config.active_record.schema_format = :sql
评论后,一切正常。
【解决方案2】:
我从来没有遇到过这个问题,但这可能会解决它:
- 备份您当前的 schema.rb
cp db/schema.rb db/schema.rb.backup
- 删除 schema.rb
rm db/schema.rb
- 运行
rake db:migrate
这将从当前数据库状态重新生成您的 schema.rb 文件。