Ruby on rails 安装Desive gem时发生打字错误后出现未初始化的常量错误消息

Ruby on rails 安装Desive gem时发生打字错误后出现未初始化的常量错误消息,ruby-on-rails,ubuntu,devise,ruby-1.9.3,ruby-on-rails-3.2,Ruby On Rails,Ubuntu,Devise,Ruby 1.9.3,Ruby On Rails 3.2,我刚开始学习如何编程,但已经使用Ubuntu好几年了,所以我对研究问题和错误非常熟悉,但要么这个领域对我来说太新,要么我真的找不到任何具体的答案 我正在学习RubyonRails入门课程,到了我必须安装DesiveGem的地步,这就是我犯了一个错误的地方 在按照上的说明操作时,我无意中键入了: rails generate devise install 而不是 rails generate devise:install 现在,每当我尝试加载 铁轨 我收到以下错误消息: /home/amer/

我刚开始学习如何编程,但已经使用Ubuntu好几年了,所以我对研究问题和错误非常熟悉,但要么这个领域对我来说太新,要么我真的找不到任何具体的答案

我正在学习RubyonRails入门课程,到了我必须安装DesiveGem的地步,这就是我犯了一个错误的地方

在按照上的说明操作时,我无意中键入了:

rails generate devise install
而不是

rails generate devise:install
现在,每当我尝试加载

铁轨

我收到以下错误消息:

/home/amer/.rvm/gems/ruby-1.9.3-p327/gems/activesupport-3.2.9/lib/active_support/inflector/methods.rb:230:in `block in constantize': uninitialized constant Install (NameError)
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/activesupport-3.2.9/lib/active_support/inflector/methods.rb:229:in `each'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/activesupport-3.2.9/lib/active_support/inflector/methods.rb:229:in `constantize'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/devise-2.1.2/lib/devise.rb:256:in `get'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/devise-2.1.2/lib/devise/mapping.rb:77:in `to'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/devise-2.1.2/lib/devise/mapping.rb:72:in `modules'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/devise-2.1.2/lib/devise/mapping.rb:89:in `routes'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/devise-2.1.2/lib/devise/mapping.rb:156:in `default_used_route'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/devise-2.1.2/lib/devise/mapping.rb:66:in `initialize'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/devise-2.1.2/lib/devise.rb:290:in `new'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/devise-2.1.2/lib/devise.rb:290:in `add_mapping'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/devise-2.1.2/lib/devise/rails/routes.rb:208:in `block in devise_for'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/devise-2.1.2/lib/devise/rails/routes.rb:207:in `each'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/devise-2.1.2/lib/devise/rails/routes.rb:207:in `devise_for'
from /home/amer/Documents/Rails_Projects/omrails/omrails1/config/routes.rb:3:in `block in <top (required)>'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/actionpack-3.2.9/lib/action_dispatch/routing/route_set.rb:282:in `instance_exec'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/actionpack-3.2.9/lib/action_dispatch/routing/route_set.rb:282:in `eval_block'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/actionpack-3.2.9/lib/action_dispatch/routing/route_set.rb:260:in `draw'
from /home/amer/Documents/Rails_Projects/omrails/omrails1/config/routes.rb:1:in `<top (required)>'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/application/routes_reloader.rb:40:in `block in load_paths'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/application/routes_reloader.rb:40:in `each'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/application/routes_reloader.rb:40:in `load_paths'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/application/routes_reloader.rb:16:in `reload!'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/application/routes_reloader.rb:26:in `block in updater'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/activesupport-3.2.9/lib/active_support/file_update_checker.rb:78:in `call'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/activesupport-3.2.9/lib/active_support/file_update_checker.rb:78:in `execute'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/application/routes_reloader.rb:27:in `updater'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/application/routes_reloader.rb:7:in `execute_if_updated'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/application/finisher.rb:66:in `block in <module:Finisher>'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/initializable.rb:30:in `instance_exec'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/initializable.rb:30:in `run'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/initializable.rb:55:in `block in run_initializers'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/initializable.rb:54:in `each'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/initializable.rb:54:in `run_initializers'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/application.rb:136:in `initialize!'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/railtie/configurable.rb:30:in `method_missing'
from /home/amer/Documents/Rails_Projects/omrails/omrails1/config/environment.rb:5:in `<top (required)>'
from /home/amer/Documents/Rails_Projects/omrails/omrails1/config.ru:4:in `block in <main>'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/rack-1.4.1/lib/rack/builder.rb:51:in `instance_eval'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/rack-1.4.1/lib/rack/builder.rb:51:in `initialize'
from /home/amer/Documents/Rails_Projects/omrails/omrails1/config.ru:1:in `new'
from /home/amer/Documents/Rails_Projects/omrails/omrails1/config.ru:1:in `<main>'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/rack-1.4.1/lib/rack/builder.rb:40:in `eval'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/rack-1.4.1/lib/rack/builder.rb:40:in `parse_file'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/rack-1.4.1/lib/rack/server.rb:200:in `app'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/commands/server.rb:46:in `app'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/rack-1.4.1/lib/rack/server.rb:301:in `wrapped_app'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/rack-1.4.1/lib/rack/server.rb:252:in `start'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/commands/server.rb:70:in `start'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/commands.rb:55:in `block in <top (required)>'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/commands.rb:50:in `tap'
from /home/amer/.rvm/gems/ruby-1.9.3-p327/gems/railties-3.2.9/lib/rails/commands.rb:50:in `<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'
正如在中所描述的,但这也没有真正的帮助


我该怎么办?有人能解释一下这里发生了什么吗?

我认为你没有宝石问题,只是一个混乱的设计设置,很可能很容易不被使用

当您运行designe生成器(使用
rails-generate-designe:something
)时,它会运行代码在应用程序树(app/*)中创建一些特定于您的应用程序的文件。我正在看一个designe安装,我认为它主要会在
app/views/designe
目录中,但它也可能会更新您的用户模型。它肯定会更新你的
app/routes.rb
文件,并在
config/initializers
中创建一个文件。可能还有其他人

删除其中任何一项。区域设置中可能还有其他文件,db/migrate(有一个迁移——不要运行它,或者在删除它之前运行
rake db:rollback
,如果有的话)

然后重新运行安装


如果这不起作用,另一种方法是创建一个新的虚拟Rails应用程序,在那里安装Desive,并查看创建了哪些文件——通常生成器会报告它们正在做什么。

我认为您没有gem问题,只是一个混乱的Desive设置,很可能很容易被取消使用

当您运行designe生成器(使用
rails-generate-designe:something
)时,它会运行代码在应用程序树(app/*)中创建一些特定于您的应用程序的文件。我正在看一个designe安装,我认为它主要会在
app/views/designe
目录中,但它也可能会更新您的用户模型。它肯定会更新你的
app/routes.rb
文件,并在
config/initializers
中创建一个文件。可能还有其他人

删除其中任何一项。区域设置中可能还有其他文件,db/migrate(有一个迁移——不要运行它,或者在删除它之前运行
rake db:rollback
,如果有的话)

然后重新运行安装

如果这不起作用,另一种方法是创建一个新的虚拟Rails应用程序,在那里安装Desive,并查看创建了哪些文件——通常生成器会报告它们在做什么。

我理解您的问题。 您已经编写了
rails generate designe install
。这意味着您已经将
安装关联为一个模型来设计而不是配置它。因此,您的文件是在没有设计配置的情况下创建的

你只需按照我写的:
1) 在“/config/initializers”中创建一个
designe.rb
文件
2) 在其中写入以下代码:

designe.setup do | config |

config.mailer\u发件人=”devise@example.com“

config.scoped\u views=true

需要“设计/orm/active_记录”
#[这对您有用]
config.case\u不区分大小写\u key=[:email]

config.strip\u whitespace\u keys=[:email]

config.skip\u session\u storage=[:http\u auth]

config.streams=Rails.env.test?1:10

config.reconfirmatible=true

config.reset\u password\u在=6.小时内
config.sign\u out\u via=:delete

end

2) 并在终端中写入
rails destroy design install
。就这样。
我认为上述措施肯定会奏效

3) 现在再次启动服务器
rails

4) 小心地重新安装装置。说吧。

我理解你的问题。 您已经编写了
rails generate designe install
。这意味着您已经将
安装关联为一个模型来设计而不是配置它。因此,您的文件是在没有设计配置的情况下创建的

你只需按照我写的:
1) 在“/config/initializers”中创建一个
designe.rb
文件
2) 在其中写入以下代码:

designe.setup do | config |

config.mailer\u发件人=”devise@example.com“

config.scoped\u views=true

需要“设计/orm/active_记录”
#[这对您有用]
config.case\u不区分大小写\u key=[:email]

config.strip\u whitespace\u keys=[:email]

config.skip\u session\u storage=[:http\u auth]

config.streams=Rails.env.test?1:10

config.reconfirmatible=true

config.reset\u password\u在=6.小时内
config.sign\u out\u via=:delete

end

2) 并在终端中写入
rails destroy design install
。就这样。
我认为上述措施肯定会奏效

3) 现在再次启动服务器
rails


4) 小心地重新安装装置。继续吧。

嘿@谢谢你的回答。我遵循了您的步骤,但当我运行
rails destroy designe install
时,我又收到了一条同样的错误消息。以
/home/amer/.rvm/gems/ruby-1.9.3-p327/gems/activesupport-3.2.9/lib/active\u support/indexctor/methods.rb:230:in
block in constantize:“未初始化常量安装(namererror)`等开头。@user1861553如果再次出现这种情况,最好删除在
rvm gemset empty [gemset_name]