这是我第一次尝试让Gem在rails中工作,而我还没有能够按照文档进行操作。
我首先使用sudo gem install ping back
安装了gem,然后通过gem 'pingback'
将其添加到我的Gemfile中。然后我运行了bundle install,它显示它安装在它输出的列表中。
那么我错了一个看起来像这个并且在我的帖子控制器中的小功能:
def send_trackback(posts)
posts.each do |post|
source_uri = "http://example.com/posts/#{post.slug_url}"
target_uri = post.target_url
Pingback::Client.new.ping(source_uri, target_uri)
end
end
每当我尝试加载发送引用的管理页面时,我都会得到以下内容:
NameError in PostsController#pingback
uninitialized constant PostsController::Pingback
我必须做的不仅仅是通过捆绑器安装gem然后即插即用吗?
的更新 的
将require 'pingback'
添加到我的帖子控制器顶部会产生以下结果:
cannot load such file -- pingback
答案 0 :(得分:0)
向我显示的错误消息表明虚拟机正在PingBack
中尝试查找PostsController
,我认为您缺少PingBack
的require或include语句。
答案 1 :(得分:0)
这可能是一个拼写错误,但pingback需要是一个单词,而不是为gemfile中的行“ping back”,以及gem安装。
我会尝试运行'bundle list'来确保安装gem。
答案 2 :(得分:0)
我重启了rails服务器,我相信这已经解决了这个问题。