rake db:migrate不起作用(Rails 4.0.4)

我在Rails 4.0.4 / Ruby 2.1.0上有一个新的应用程序。 我做的第一件事就是添加Devise gem。 当我想运行rake db:migrate时,它什么都不做。 没有错误,但是没有执行迁移。

你能帮我解决一下这个案子怎么办? 我找不到问题出在哪里。

谢谢! 切赫

好的,问题是Devise生成器生成了“.txt”文件,而不是“.rb”文件。 奇怪,但改变扩展解决了它。

我和Petr有同样的问题,我想我发现了原因。 出于某种原因,当我运行’rails g devise User’时,它创建了一个迁移(db / migrate / [timestamp] _devise_create_users.rb)。 这就是它的假设,但经过进一步检查,迁移最终错过了’.rb’。 所以它看起来像(db / migrate / [timestamp] _devise_create_users)。 当我在最后添加.rb并运行’rake db:migrate’时,它就像一个魅力。 我不知道为什么rails最后没有附上’.rb’。 希望有所帮助。

安装devise gem后,您必须执行以下操作

  1. rails generate devise:install

生成器将安装一个初始化程序,它描述了所有Devise的配置选项,你必须看看它。 完成后,您就可以使用生成器将Devise添加到任何模型中

  1. rails generate devise

这是生成迁移的步骤。 例如,如果要将设计添加到用户模型,则应该这样做

 rails generate devise User 

因此,它将生成一个迁移,以将与设计相关的列添加到users表