RAILS:未定义的方法`secret_key ='对于Devise:模块

时间:2013-09-19 10:40:41

标签: ruby-on-rails ruby ruby-on-rails-3 model devise

我使用命令 rails generate model testdetails 在rails中定义了一个模型。之后我去了db / migrate并为这个模型写了字段

class CreateTestDetails < ActiveRecord::Migration
 def self.up
   create_table :test_details do |t|
     t.column :TestName ,:string
     t.column :TestType ,:integer
   end
 end
end

然后我做db:migrate,它会抛出一些错误。我谷歌它发现它可能是由于设计版本(我正在使用设计认证),我更新Gemfile并编写了版本的设计(2.1)并做了捆绑安装。之后我又做了db:migrate但它显示了这个错误

耙子流产了! 未定义的方法secret_key=' for Devise:Module /home/vibhor/rails_projects/recruit/config/initializers/devise.rb:7:in阻止' /home/vibhor/rails_projects/recruit/config/initializers/devise.rb:3:in <top (required)>' /home/vibhor/rails_projects/recruit/config/environment.rb:5:in' 任务:TOP =&gt; db:migrate =&gt;环境

我该怎么做才能创建这个模型而没有任何错误?我正在使用rails 3.2.13和ruby 2.0.0

3 个答案:

答案 0 :(得分:4)

我认为这是由于宝石版本所以将其更新到最新版本3.x或从config/initializers/devise.rb file.

中删除该行

答案 1 :(得分:3)

config/initializers/devise.rb文件中添加以下行:

config.secret_key = 'Your secret Key'

并使用rake secret生成您的密钥。

如果您需要更多信息,请在github中打开issue

答案 2 :(得分:0)

最近有同样的问题。检查设备初始化器,因为它最近已经改变。对我来说,它解决了这个问题。