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

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

问题描述

我是 Ruby on Rails 的新手,正在尝试制作我的第一个应用程序.我在任何时候运行任何 rails generate 命令时都会遇到问题.我收到以下错误

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>'

即使我没有将 gem 'devise' 添加到我的 Gemfile 中,我仍然会收到该错误.我什至创建了一个新应用程序并收到了该错误.

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.

我什至在 未定义的用户方法设计"

知道如何摆脱这个错误吗?

Any idea how I can get rid of this error?

编辑我目前没有任何模型

推荐答案

发生这种情况是因为您错过了命令:

This happens because you missed the command:

rails generate devise:install

您只需要临时评论所有设计行(在 routes.rb/user.rb 中)就不会被加薪.
并再次运行命令.

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天全站免登陆