2014-01-19 6 views
2

Я пытаюсь интегрировать аутентификацию Facebook в приложение Rails с помощью mongomapper, и я получаю сообщение об ошибке при следующем методе. Я думаю, что ошибка находится в секции first_or_initialize, потому что это запрос ActiveRecord вместо mongomapper.Проверка подлинности Facebook с помощью MongoMapper

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 

конец

EDIT: Here is the terminal output when the error is thrown Любые предложения?

ответ

0

Я в одной лодке. Я смог создать пользователя, изменив строку first_or_initialize следующим образом:

first_or_create(auth.slice(:provider, :uid)).tap do |user| 
+0

В итоге я нашел другое решение, но в следующий раз попробую. Спасибо! – emk411

Смежные вопросы