【发布时间】:2013-02-22 22:25:57
【问题描述】:
我有一个没有依赖项的简单 rails 应用程序(rails 新示例)。然后我创建了一个脚手架学生(rails g scaffold Student name:string)。之后,我运行 rake db:create 然后 rake db:migrate。
rake db:migrate 不返回任何内容。它没有执行我的迁移,屏幕上没有错误。但是,当我执行 rake db:migrate VERSION=123456 时,迁移运行正常。
您知道 rake db:migrate without version 发生了什么吗? (我在 MAC OS X 上)
谢谢
【问题讨论】:
-
是否有新的迁移来“迁移”?
-
是的,有一个。我做了以下步骤: rails new my_app && rails g scaffold Student name:string && rake db:create && rake db:migrate
-
@user1985010-
VERSION=123456没有意义,除非您使用此特定版本号进行学生迁移。 -
rake db:migrate仅在所有迁移都已运行且rake db:migrate VERSION= 123456使用此版本号执行迁移时不执行任何操作。 -
您在创建 Rails 应用程序后是否
cd new_app?查看您的 db/schema.rb 文件。那里显示的是什么版本号?示例:ActiveRecord::Schema.define(:version => 20130305185827)。如果一切都失败了,请执行rm db/schema.rb并再次迁移。
标签: ruby-on-rails migration rake