我收到了这个错误
NameError in WelcomeController#index
uninitialized constant YouTubeIt
Rails.root: C:/Sites/rails_code/youtube
顺便说一下,我检查了gem
作者github
,检查了常数的sintax,似乎一切都没问题,所以我无法弄明白。
这里有一个非常相似的问题:
但在他的情况下,有一个拼写错误,我没有任何拼写错误,我甚至检查了教程6次,但我身边没有明显的错误,这是我的controller
代码:
class WelcomeController < ApplicationController
def index
@cliente = ::YouTubeIt::Client.new(:dev_key => "AI39si4Ao5BFsYIkbzko7b9A_iktB2Pc8DAblJJ_JzJx6IL6Mju1dYYkMKY6TByz8MJPXfm4__tCAt9Is6Mvjg2JM55kuJVVqQ")
@videos = @cliente.videos_by(user: "AlbertoMaso2")
end
end
已经安装了youtube_it
,并通过将其添加到Gemfile
来宣布它在应用中的存在。
我坚持这个,无法让它发挥作用。
任何人都可以对此有所了解吗?
提前致谢!
答案 0 :(得分:1)
如果您更改
会发生什么@cliente = ::YouTubeIt::Client.new...
到
@cliente = YouTubeIt::Client.new...
答案 1 :(得分:1)
如果您更改了Gemfile
或添加了新的gem,请确保您已更新Gemfile.lock
。要更新锁定文件,只需运行bundle install
命令。
然后,为了检查gem的可用性,您无法运行整个rails服务器,而只需使用已加载development
环境的rails控制台。这样做:
$ rails c
或
$ rails console
然后在IRB
内,您可以尝试新的gem功能,在您的情况下如下:
irb(main):001:0> require 'youtube_it'
=> true
irb(main):002:0> YouTubeIt
=> YouTubeIt