Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb 在本地工作,但提供;未初始化常量用户(NameError)";论赫罗库_Mongodb_Heroku_Devise_Ruby On Rails 3.2 - Fatal编程技术网

Mongodb 在本地工作,但提供;未初始化常量用户(NameError)";论赫罗库

Mongodb 在本地工作,但提供;未初始化常量用户(NameError)";论赫罗库,mongodb,heroku,devise,ruby-on-rails-3.2,Mongodb,Heroku,Devise,Ruby On Rails 3.2,我在Heroku上使用Rails、MongoDB和Mongoid。我正在使用Desive进行用户身份验证User应该是设计创建的模型的名称。当我在本地运行它时,一切正常,但在Heroku上,应用程序崩溃,日志中出现以下错误 /app/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.13/lib/active_support/inflector/methods.rb:230:in `block in constantize': uninitializ

我在Heroku上使用Rails、MongoDB和Mongoid。我正在使用Desive进行用户身份验证
User
应该是设计创建的模型的名称。当我在本地运行它时,一切正常,但在Heroku上,应用程序崩溃,日志中出现以下错误

/app/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.13/lib/active_support/inflector/methods.rb:230:in `block in constantize': uninitialized constant User (NameError)

我相信您的问题是您的模型用户很可能是
app/model/user.rb
重命名文件,使其成为
user.rb
。还要确保在您的用户模型中

class User 
...... 
 ....
  ...

end 

还要确保您运行了heroku rake db:migrate

我遇到了同样的问题,将文件名改为小写实际上解决了这个问题。但是请注意,问题是关于MongoDB和Mongoid的,这意味着不应该使用ActiveRecord(Mongoid使用Mongoid::Document mixin)。解决这个问题只需要文件大小写位。我也有同样的问题,但我的文件是小写的:(