我跟隨此RailsCast on Facebook API。以下代碼允許將塊傳遞給facebook
方法並受益於rescue
。在Rails中自動環繞救援方法
def facebook
@facebook ||= Koala::Facebook::API.new(oauth_token)
block_given? ? yield(@facebook) : @facebook
rescue Koala::Facebook::APIError => e
logger.info e.to_s
nil # or consider a custom null object
end
def friends_count
facebook { |fb| fb.get_connection("me", "friends").size }
end
不過,我來調用這裏定義facebook
方法方法一打,我不希望在每個人重複facebook {}
。 (語法不是特別好)。
有沒有辦法簡化這個?就像一個過濾器,它將環繞每個調用facebook
的方法。
你的代碼是明確的,我會保留它 – apneadiving 2013-03-06 14:55:39
@apneadiving謝謝。這說得通。 – AdamNYC 2013-03-06 15:07:24