Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.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
Ruby on rails rails生成命令返回错误_Ruby On Rails_Ruby_Rvm - Fatal编程技术网

Ruby on rails rails生成命令返回错误

Ruby on rails rails生成命令返回错误,ruby-on-rails,ruby,rvm,Ruby On Rails,Ruby,Rvm,我已经决定学习Rails,但它总是给我带来麻烦。我自己设法解决了这些问题,但这一个不会消失。我正在关注这个 但是,当我尝试使用rails generate controller welcome index创建一个新的控制器时,我得到以下错误: Constantins-MacBook-Pro-2:n00b Constantin$ rails generate controller welcome index /Users/Constantin/.rvm/gems/ruby-2.1.1@n0

我已经决定学习Rails,但它总是给我带来麻烦。我自己设法解决了这些问题,但这一个不会消失。我正在关注这个 但是,当我尝试使用
rails generate controller welcome index
创建一个新的控制器时,我得到以下错误:

    Constantins-MacBook-Pro-2:n00b Constantin$ rails generate controller welcome index
/Users/Constantin/.rvm/gems/ruby-2.1.1@n00b/gems/activesupport-4.1.0/lib/active_support/dependencies.rb:241:in `load': no implicit conversion of nil into String (TypeError)
    from /Users/Constantin/.rvm/gems/ruby-2.1.1@n00b/gems/activesupport-4.1.0/lib/active_support/dependencies.rb:241:in `block in load'
    from /Users/Constantin/.rvm/gems/ruby-2.1.1@n00b/gems/activesupport-4.1.0/lib/active_support/dependencies.rb:232:in `load_dependency'
    from /Users/Constantin/.rvm/gems/ruby-2.1.1@n00b/gems/activesupport-4.1.0/lib/active_support/dependencies.rb:241:in `load'
    from /Users/Constantin/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /Users/Constantin/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from -e:1:in `<main>'
Constantins-MacBook-Pro-2:n00b Constantin$rails生成控制器欢迎索引
/Users/Constantin/.rvm/gems/ruby-2.1。1@n00b/gems/activesupport-4.1.0/lib/active\u support/dependencies.rb:241:“加载”中:没有将nil隐式转换为字符串(TypeError)
来自/Users/Constantin/.rvm/gems/ruby-2.1。1@n00b/gems/activesupport-4.1.0/lib/active\u support/dependencies.rb:241:in'block in load'
来自/Users/Constantin/.rvm/gems/ruby-2.1。1@n00b/gems/activesupport-4.1.0/lib/active\u-support/dependencies.rb:232:in'load\u-dependency'
来自/Users/Constantin/.rvm/gems/ruby-2.1。1@n00b/gems/activesupport-4.1.0/lib/active\u-support/dependencies.rb:241:in'load'
from/Users/Constantin/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems/core\u ext/kernel\u require.rb:55:in'require'
from/Users/Constantin/.rvm/rubies/ruby-2.1.1/lib/ruby/2.1.0/rubygems/core\u ext/kernel\u require.rb:55:in'require'
from-e:1:in`'
从我在网上发现的情况来看,这意味着每次我创建新控制器等时,编译器都会在我的应用程序中运行,然后发现这些错误。对的但由于我还没有编辑过一行代码,我不明白这些代码是从哪里来的,也不明白他想告诉我什么。这可能是我错过的其他东西,但我就是找不到一个解决方案,无论是在线的,还是尝试错误的


提前感谢

看起来您在您的主目录中。要生成rails控制器,您应该位于要修改的rails应用程序的目录中

编辑:如果不是这样,请粘贴执行此操作时发生的情况(从干净的目录):


没有。只是为了确保我将cd放入新终端窗口中的目录,并再次运行相同的命令,但我得到了完全相同的错误…好的,然后查看我的更新。我们从这里得到的信息很少。好吧,很明显,它现在起作用了。它开始创建文件并将其放置在目录app/。。。测试/。。。等等,我想它现在可以工作了。谢谢!我仍然不知道发生了什么。知道会很有意思,但没问题,Rails不是一个简单的小工具,一开始,你的脑子里总是想着所有东西的位置以及它们是如何组合在一起的,这真的很让人困惑。尝试
捆绑安装
-当你使用4.1.0时,你的一个gem依赖项可能会被破坏。这又给了我同样的错误…这看起来很难…在运行之前,也尝试先删除你的
Gemfile.lock
bundle安装
以使其重建gem依赖项。Nick编辑的答案也很有用-帮助确定问题是仅此应用程序还是您环境中的所有应用程序。祝你好运好的,我从rails应用程序的根目录中删除了Gemfile.lock。清除了我的bin,然后运行了
bundle install
命令,但它会在完全相同的行中导致完全相同的错误,等等。
rails new new-app
cd new-app
rails g controller welcome index