`method_missing':用户的未定义方法`devise'(调用'User.connection'建立连接) [英] `method_missing': undefined method `devise' for User (call 'User.connection' to establish a connection)

查看:156
本文介绍了`method_missing':用户的未定义方法`devise'(调用'User.connection'建立连接)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是Ruby on Rails的新手,我试图让我的第一个应用程序。当我运行任何 rails生成命令时,我有问题。我收到以下错误

  MyUsers-MacBook-Pro:MyApp MyUser $ rails generate devise:install 
警告:正在运行`gem pristine --all`重新生成你安装的gemspecs(如果你使用bundle --path,那么删除然后重新安装你的bundle)就可以提高Spring的启动性能。
/Users/MyUser/.gem/ruby/2.0.0/gems/activerecord-4.1.2.rc1/lib/active_record/dynamic_matchers.rb:26:in`method_missing':用于用户的undefined方法`devise' (调用'User.connection'建立连接):Class(NoMethodError)
来自/Users/MyUser/.Trash/MyApp/app/models/user.rb:4:in`< class:User> '
from /Users/MyUser/.Trash/MyApp/app/models/user.rb:1:in`< top(required)>'
from /Users/MyUser/.gem/ ruby / 2.0.0 / gems / activesupport-4.1.2.rc1 / lib / active_support / dependencies.rb:443:在`load'
from /Users/MyUser/.gem/ruby/2.0.0/gems /activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:443:in`load in load_file'
from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1。 2.rc1 / lib / active_support / dependencies.rb:633:在`new_constants_in'
from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support /dependencies.rb:442:in`load_file'
from /Users/MyUser/.gem/ruby/2.0.0/gems/act ivesupport-4.1.2.rc1 / lib / active_support / dependencies.rb:342:在`require_or_load'
from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1 /lib/active_support/dependencies.rb:480:in`load_missing_constant'
from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies。 rb:180:在`const_missing'
from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/inflector/methods.rb:238:in `const_get'
from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/inflector/methods.rb:238:in`block in constantize'
from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/inflector/methods.rb:236:in`each'
from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/inflector/methods.rb:236:in`inject'
from / Users / MyUser / .gem /红宝石/ 2.0.0 /宝石/的ActiveSupport-4.1.2.rc1 / lib目录/ active_support /偏转/我thods.rb:236:在`constantize'
from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:552:in 'get'
from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:583:in`constantize'
从/Library/Ruby/Gems/2.0.0/gems/devise-3.2.4/lib/devise.rb:297:in从/Library/Ruby/Gems/2.0.0/gems/获取
devise-3.2.4 / lib / devise / mapping.rb:77:来自/Library/Ruby/Gems/2.0.0/gems/devise-3.2.4/lib/devise/mapping的`to'
。 rb:72:在`modules'
from /Library/Ruby/Gems/2.0.0/gems/devise-3.2.4/lib/devise/mapping.rb:89:in`routes'
来自/Library/Ruby/Gems/2.0.0/gems/devise-3.2.4/lib/devise/mapping.rb:156:in`default_used_route'
from /Library/Ruby/Gems/2.0.0/ gems / devise-3.2.4 / lib / devise / mapping.rb:66:在`initialize'
从/Library/Ruby/Gems/2.0.0/gems/devise-3.2.4/lib/devise。 rb:331:在`new'
从/Library/Ruby/Gems/2.0.0/gems/devi se-3.2.4 / lib / devise.rb:331:在`add_mapping'
从/Library/Ruby/Gems/2.0.0/gems/devise-3.2.4/lib/devise/rails/routes。 rb:221:在`block in devise_for'
from /Library/Ruby/Gems/2.0.0/gems/devise-3.2.4/lib/devise/rails/routes.rb:220:in`each'
从/Library/Ruby/Gems/2.0.0/gems/devise-3.2.4/lib/devise/rails/routes.rb:220:in`devise_for'
from / Users / MyUser / .Trash / MyApp / config / routes.rb:2:在`block in< top(required)>'
from /Users/MyUser/.gem/ruby/2.0.0/gems/actionpack-4.1 .2.rc1 / lib / action_dispatch / routing / route_set.rb:337:在`instance_exec'
from /Users/MyUser/.gem/ruby/2.0.0/gems/actionpack-4.1.2.rc1/ lib / action_dispatch / routing / route_set.rb:337:在`eval_block'
from /Users/MyUser/.gem/ruby/2.0.0/gems/actionpack-4.1.2.rc1/lib/action_dispatch/routing /route_set.rb:315:in'draw'
from /Users/MyUser/.Trash/MyApp/config/routes.rb:1:in`< top(required)>'
from /Users/MyUser/.gem/ruby/2.0.0/gems /activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:241:in'load'
from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2。 rc1 / lib / active_support / dependencies.rb:241:在`block in load'
from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support /dependencies.rb:232:in`load_dependency'
from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:241:在`load'
from /Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/application/routes_reloader.rb:40:in`block in load_paths '
from /Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/application/routes_reloader.rb:40:in`each'
来自/Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/application/routes_reloader.rb:40:in`load_paths'
from / Users / MyUser /.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/application/routes_reloader.rb:16:in`reload!'
fro m /Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/application/routes_reloader.rb:26:in`更新程序中的'
从/ Users /MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/file_update_checker.rb:75:in从/Users/MyUser/.gem/ruby的`call'
/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/file_update_checker.rb:75:in$
/Users/MyUser/.gem/ruby/2.0.0/gems/ railties-4.1.2.rc1 / lib / rails / application / routes_reloader.rb:27:在`updater'
from /Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2 .rc1 / lib / rails / application / routes_reloader.rb:7:在`execute_if_updated'
from /Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/ rails / application / finisher.rb:71:在`block in< module:Finisher>'
from /Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/ lib / rails / initializable.rb:30:在`instance_exec'
从/Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/initial izable.rb:30:在`run'
from /Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/initializable.rb:55:in `block in run_initializers'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/tsort.rb:150:in`block in tsort_each'
从/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/tsort.rb:183:in`block(2 levels)in each_strongly_connected_component'
from / System /Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/tsort.rb:219:in`each_strongly_connected_component_from'
from /System/Library/Frameworks/Ruby.framework/Versions /2.0/usr/lib/ruby/2.0.0/tsort.rb:182:in`block in each_strongly_connected_component'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby /2.0.0/tsort.rb:180:in`each'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/tsort.rb:180 :在`each_strongly_connected_component'
从/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/tsort.rb:148:in`tsort_each'
from /Users/MyUser/.gem /ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/initializable.rb:54:in`run_initializers'
from /Users/MyUser/.gem/ruby/2.0.0/ gems / railties-4.1.2.rc1 / lib / rails / application.rb:300:在`initialize!'
from /Users/MyUser/.Trash/MyApp/config/environment.rb:5:in` < top(required)>'
from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:247:in`需要'
from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:247:in`block in require'
/来自/Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:232:in`load_dependency'
from / Users / MyUser / .gem / ruby​​ / 2.0.0 / gems / activesupport-4.1.2.rc1 / lib / active_support / dependencies.rb:247:在`require'
from / Library / Ru by / Gems / 2.0.0 / gems / spring-1.1.3 / lib / spring / application.rb:92:在`preload'
从/Library/Ruby/Gems/2.0.0/gems/spring- 1.1.3 / lib / spring / application.rb:140:在`serve'
从/Library/Ruby/Gems/2.0.0/gems/spring-1.1.3/lib/spring/application.rb: 128:在`block in run'
from /Library/Ruby/Gems/2.0.0/gems/spring-1.1.3/lib/spring/application.rb:122:in`loop'
从/Library/Ruby/Gems/2.0.0/gems/spring-1.1.3/lib/spring/application.rb:122:in运行'
从/Library/Ruby/Gems/2.0.0/ gems / spring-1.1.3 / lib / spring / application / boot.rb:18:在`< top(required)>'
from /Library/Ruby/Site/2.0.0/rubygems/core_ext /kernel_require.rb:55:in`require'
from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:55:in`require'
from -e:1 :在`< main>'

即使我不添加宝石'devise'到我的Gemfile我仍然得到这个错误。我甚至创建了一个新的应用程序并得到这个错误。



我甚至尝试过未定义的方法'devise'为用户



任何想法如何摆脱这个错误? p>

编辑
我目前没有任何模型

解决方案

这是因为你错过了命令: / p>

  rails generate devise:install 

您需要在时间上(在routes.rb / user.rb中)评论所有设计线条,以免加注。

再次运行命令。


I am new to Ruby on Rails and am trying to make my first application. I am having issues though anytime I run any rails generate command. I get the following error

MyUsers-MacBook-Pro:MyApp MyUser$ rails generate devise:install
Warning: Running `gem pristine --all` to regenerate your installed gemspecs (and deleting then reinstalling your bundle if you use bundle --path) will improve the startup performance of Spring.
/Users/MyUser/.gem/ruby/2.0.0/gems/activerecord-4.1.2.rc1/lib/active_record/dynamic_matchers.rb:26:in `method_missing': undefined method `devise' for User (call 'User.connection' to establish a connection):Class (NoMethodError)
    from /Users/MyUser/.Trash/MyApp/app/models/user.rb:4:in `<class:User>'
    from /Users/MyUser/.Trash/MyApp/app/models/user.rb:1:in `<top (required)>'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:443:in `load'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:443:in `block in load_file'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:633:in `new_constants_in'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:442:in `load_file'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:342:in `require_or_load'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:480:in `load_missing_constant'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:180:in `const_missing'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/inflector/methods.rb:238:in `const_get'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/inflector/methods.rb:238:in `block in constantize'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/inflector/methods.rb:236:in `each'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/inflector/methods.rb:236:in `inject'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/inflector/methods.rb:236:in `constantize'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:552:in `get'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:583:in `constantize'
    from /Library/Ruby/Gems/2.0.0/gems/devise-3.2.4/lib/devise.rb:297:in `get'
    from /Library/Ruby/Gems/2.0.0/gems/devise-3.2.4/lib/devise/mapping.rb:77:in `to'
    from /Library/Ruby/Gems/2.0.0/gems/devise-3.2.4/lib/devise/mapping.rb:72:in `modules'
    from /Library/Ruby/Gems/2.0.0/gems/devise-3.2.4/lib/devise/mapping.rb:89:in `routes'
    from /Library/Ruby/Gems/2.0.0/gems/devise-3.2.4/lib/devise/mapping.rb:156:in `default_used_route'
    from /Library/Ruby/Gems/2.0.0/gems/devise-3.2.4/lib/devise/mapping.rb:66:in `initialize'
    from /Library/Ruby/Gems/2.0.0/gems/devise-3.2.4/lib/devise.rb:331:in `new'
    from /Library/Ruby/Gems/2.0.0/gems/devise-3.2.4/lib/devise.rb:331:in `add_mapping'
    from /Library/Ruby/Gems/2.0.0/gems/devise-3.2.4/lib/devise/rails/routes.rb:221:in `block in devise_for'
    from /Library/Ruby/Gems/2.0.0/gems/devise-3.2.4/lib/devise/rails/routes.rb:220:in `each'
    from /Library/Ruby/Gems/2.0.0/gems/devise-3.2.4/lib/devise/rails/routes.rb:220:in `devise_for'
    from /Users/MyUser/.Trash/MyApp/config/routes.rb:2:in `block in <top (required)>'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/actionpack-4.1.2.rc1/lib/action_dispatch/routing/route_set.rb:337:in `instance_exec'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/actionpack-4.1.2.rc1/lib/action_dispatch/routing/route_set.rb:337:in `eval_block'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/actionpack-4.1.2.rc1/lib/action_dispatch/routing/route_set.rb:315:in `draw'
    from /Users/MyUser/.Trash/MyApp/config/routes.rb:1:in `<top (required)>'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:241:in `load'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:241:in `block in load'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:232:in `load_dependency'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:241:in `load'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/application/routes_reloader.rb:40:in `block in load_paths'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/application/routes_reloader.rb:40:in `each'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/application/routes_reloader.rb:40:in `load_paths'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/application/routes_reloader.rb:16:in `reload!'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/application/routes_reloader.rb:26:in `block in updater'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/file_update_checker.rb:75:in `call'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/file_update_checker.rb:75:in `execute'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/application/routes_reloader.rb:27:in `updater'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/application/routes_reloader.rb:7:in `execute_if_updated'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/application/finisher.rb:71:in `block in <module:Finisher>'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/initializable.rb:30:in `instance_exec'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/initializable.rb:30:in `run'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/initializable.rb:55:in `block in run_initializers'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/tsort.rb:150:in `block in tsort_each'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/tsort.rb:183:in `block (2 levels) in each_strongly_connected_component'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/tsort.rb:219:in `each_strongly_connected_component_from'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/tsort.rb:182:in `block in each_strongly_connected_component'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/tsort.rb:180:in `each'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/tsort.rb:180:in `each_strongly_connected_component'
    from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/tsort.rb:148:in `tsort_each'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/initializable.rb:54:in `run_initializers'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/railties-4.1.2.rc1/lib/rails/application.rb:300:in `initialize!'
    from /Users/MyUser/.Trash/MyApp/config/environment.rb:5:in `<top (required)>'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:247:in `require'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:247:in `block in require'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:232:in `load_dependency'
    from /Users/MyUser/.gem/ruby/2.0.0/gems/activesupport-4.1.2.rc1/lib/active_support/dependencies.rb:247:in `require'
    from /Library/Ruby/Gems/2.0.0/gems/spring-1.1.3/lib/spring/application.rb:92:in `preload'
    from /Library/Ruby/Gems/2.0.0/gems/spring-1.1.3/lib/spring/application.rb:140:in `serve'
    from /Library/Ruby/Gems/2.0.0/gems/spring-1.1.3/lib/spring/application.rb:128:in `block in run'
    from /Library/Ruby/Gems/2.0.0/gems/spring-1.1.3/lib/spring/application.rb:122:in `loop'
    from /Library/Ruby/Gems/2.0.0/gems/spring-1.1.3/lib/spring/application.rb:122:in `run'
    from /Library/Ruby/Gems/2.0.0/gems/spring-1.1.3/lib/spring/application/boot.rb:18:in `<top (required)>'
    from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /Library/Ruby/Site/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from -e:1:in `<main>'

Even if I don't add the gem 'devise' into my Gemfile I still get that error. I even created a new application and get that error.

I have even tried the answers at undefined method 'devise' for User

Any idea how I can get rid of this error?

EDIT I currently do not have any models

解决方案

This happen because you missed the command:

rails generate devise:install

You need just comment all devise lines temporally (in routes.rb / user.rb) to not get raise.
And run command again.

这篇关于`method_missing':用户的未定义方法`devise'(调用'User.connection'建立连接)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆