2011-12-05 38 views
0

這是我第一次嘗試讓一個Gem在Rails中工作,我不僅能夠遵循文檔。PostsController中的NameError#pingback

我首先使用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 

每當我嘗試加載發送引用通告的管理頁面,我得到以下:

​​

uninitialized constant PostsController::Pingback

我必須做的不僅僅是通過捆綁和T安裝gem母雞即插即用?

更新

加入require 'pingback'到我的職位,控制器結果頂部在此:

cannot load such file -- pingback

回答

0

我重新啓動了rails服務器,我相信這已經解決了這個問題。

0

的錯誤消息,我表示VM正在試圖尋找PingBackPostsController,我想你錯過了PingBack的要求或包含聲明。

+0

我可以將它包含在控制器中嗎?還是有更好的地方來包括它? –

+0

是的,我沒有看到一個理由。 –

0

它可能是一個拼寫錯誤,但pingback需要是一個單詞,而不是針對gemfile中的行的「ping」,以及gem install。

我會嘗試運行「捆綁列表」以確保安裝了gem。

+0

謝謝。這是由自動更正造成的錯字。 'bundle install'導致我得到'* pingback(1.1.0)',它顯示它已安裝。 –

相關問題