Неопределенные методы Gem Koala 'get_object'

Я хотел использовать Koala Gem для подключения к API Facebook, но столкнулся с некоторыми проблемами.

До использования Koala я использовал omniauth-facebook для реализации единого входа в моем приложении.

Затем я добавил gem koala в Gemfile и запустил установку пакета.

В моем `user.rb '

def self.from_omniauth(auth)
  where(auth.slice(:provider, :uid)).first_or_initialize.tap do |user|
    user.provider = auth.provider
    user.uid = auth.uid
    user.name = auth.info.name
    user.oauth_token = auth.credentials.token
    user.oauth_expires_at = Time.at(auth.credentials.expires_at)
    user.save!
  end
end
def facebook
  @facebook = Koala::Facebook::API.new(oauth_token)
end

А потом перехожу в консоль.

u = User.first
  User Load (0.5ms)  SELECT "users".* FROM "users" LIMIT 1
=> #<User id: 1, provider: "facebook", uid: "100003544640331", name: "Gary Lai", oauth_token: "AAAB9iQ1zm2oBAA1w3DFBZBC2V73uheQCs43dHpOu1LYsYixqvu...", oauth_expires_at: "2012-10-02 09:55:39", created_at: "2012-07-27 16:41:18", updated_at: "2012-08-03 09:55:42">

Оно работает.

Однако, когда я следую руководству по kaola, я получаю это сообщение об ошибке.

u.facebook.get_object("me")
NoMethodError: undefined method `get_object' for #<Koala::Facebook::API:0x007fb07ab1e108>from (irb):8
from /usr/local/Cellar/ruby/1.9.3-p194/lib/ruby/gems/1.9.1/gems/railties-3.2.6/lib/rails/commands/console.rb:47:in `start'
from /usr/local/Cellar/ruby/1.9.3-p194/lib/ruby/gems/1.9.1/gems/railties-3.2.6/lib/rails/commands/console.rb:8:in `start'
from /usr/local/Cellar/ruby/1.9.3-p194/lib/ruby/gems/1.9.1/gems/railties-3.2.6/lib/rails/commands.rb:41:in `<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'

Почему я получил это сообщение об ошибке?


person Gary Lai    schedule 03.08.2012    source источник
comment
Наконец-то я решил эту проблему. Потому что моя версия коалы была 1.0. Поэтому я должен использовать gem 'koala', :git => 'https://github.com/arsduo/koala.git'   -  person Gary Lai    schedule 03.08.2012
comment
Хорошо, укажите ответ самостоятельно и проверьте его. А почему вы не использовали релиз коала (1.6.0)?   -  person Малъ Скрылевъ    schedule 23.11.2013


Ответы (1)


Наконец-то я решил эту проблему. Потому что моя версия коалы была 1.0. Поэтому я должен использовать gem 'koala', :git => 'https://github.com/arsduo/koala.git'

person Gary Lai    schedule 13.03.2015