2011-12-18 84 views
3

我是一個新手開發人員有點神祕/不知所措的文件。我想知道如何在Rails 3.1應用程序中實現Twitter Gem。如何在rails應用程序中設置Twitter gem?

  1. 我已經安裝了寶石,知道我需要配置它,但如果我把Rails應用程序中此配置信息? ,它是否需要以某種方式進行修改才能使其與rails應用程序同步?

    Twitter.configure do |config| 
        config.consumer_key = ENV['CONSUMER_KEY'] 
        config.consumer_secret = ENV['CONSUMER_SECRET'] 
        config.oauth_token = ENV['ACCESS_TOKEN'] 
        config.oauth_token_secret = ENV['TOKEN_SECRET'] 
    end 
    
  2. 我必須要求 '嘰嘰喳喳' 的任何地方?

  3. 如果我想要我的應用程序的訪問者從我的應用程序更新其狀態,是否必須安裝Omniauth?或者這顆寶石是否足夠?即如果我在gem文件中需要'twitter'並執行捆綁安裝,捆綁器會照顧我需要的一切嗎?

回答

0

第一個問題,你使用設計?如果你是,這應該更容易,因爲我用devise + omniauth + twitter構建我自己的應用程序。如果你不是,即使我自己是新手軌道開發人員,我也會盡力引導你走上正確的道路。

對於初學者,您應該有一個Twitter帳戶。您應該登錄here並創建您的應用。在那裏,您可以在Settings選項卡中選擇要訪問您的用戶的Twitter帳戶的訪問類型或權限。就我而言,我使用的是Read only,也就是說,我只使用Twitter進行身份驗證。由於您可能希望用戶更新其狀態,因此您可能需要查看另外兩個選項:Read and WriteRead, Write and Access direct messages。您還應該定義一個回調URL,這是Twitter在成功驗證後返回的位置。然後你有幾個化妝品選項來漂亮你的oauth對話框。 在Details標籤中,你會發現你的Consumer keyConsumer secret,你永遠不應該透露你在Rails應用中需要的東西。

在您的應用程序,你應該包括這些寶石(和運行bundle install後):

#Gemfile 
gem 'omniauth' 
gem 'omniauth-twitter' 

然後,在你的初始化,您應該創建一個名爲omniauth.rb文件(你可以叫它任何你喜歡的,但它的標準),有以下:

#config/initializers/omniauth.rb 
require 'omniauth-twitter' 
config.omniauth :twitter, ENV['TWITTER_KEY'], ENV['TWITTER_SECRET'] 

對我來說,因爲我使用的設計,我包括這在我devise.rb文件,但它其實並不重要,你有這個,只要它是在中的文件中目錄。

你一定要看看以下網站:

Omniauth's Github Wiki

The invaluable Railscasts by Ryan Bates

相關問題