Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/56.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 已安装的导轨未加载_Ruby On Rails_Gem - Fatal编程技术网

Ruby on rails 已安装的导轨未加载

Ruby on rails 已安装的导轨未加载,ruby-on-rails,gem,Ruby On Rails,Gem,我是Rails(和Ruby)的新手,在安装和使用gems时遇到了麻烦。我正在尝试使用ruby tmdb(),但文档很少 “sudo gem install ruby tmdb”运行正常,运行“gem list--local”时可以看到安装的gem 但是,当我尝试运行该应用程序时,会出现错误“没有这样的文件要加载——ruby tmdb” 我在Mac OS X雪豹上。Ruby 1.8.7。Rails 3.0.3。Gem 1.3.7.您的Gem文件中是否列出了Gem?在Rails 3中,所有gem依赖

我是Rails(和Ruby)的新手,在安装和使用gems时遇到了麻烦。我正在尝试使用ruby tmdb(),但文档很少

“sudo gem install ruby tmdb”运行正常,运行“gem list--local”时可以看到安装的gem

但是,当我尝试运行该应用程序时,会出现错误“没有这样的文件要加载——ruby tmdb”


我在Mac OS X雪豹上。Ruby 1.8.7。Rails 3.0.3。Gem 1.3.7.

您的Gem文件中是否列出了Gem?在Rails 3中,所有gem依赖项都应该列在gem文件中,以便在应用程序运行时正确加载

您应该具有类似于以下行的内容:

gem 'ruby-tmdb'
然后,运行
bundle install
以确保安装了所有gem依赖项,并让Bundler保存锁文件,以确保此应用程序的所有副本都使用相同的gem版本运行。从这一点开始,您将不再需要自己编写
require
行;Rails将在环境加载时加载所有必要的gem

即使在这之后,您也可能会遇到相同的错误,但通过标准流程来缩小范围始终是值得的:)

$sudo which gem 哪块宝石 $sudoruby-v $ruby-v

有时用户与root用户有不同的gem和ruby

一个常见的问题是,root用户为ruby 1.8安装的gem对于ruby 1.9用户来说是不可见的

用于ruby 1.8的gems和用于1.9的gems不兼容


这可能不是问题所在,但值得考虑。

太好了!非常感谢。我想很多教程都过时了,因为Rails似乎在版本之间改变了很多。