Я выполняю новое руководство по установке новой версии OmniAuth 1.0.0 с новой версией разработать вРуководство для новой версии 1.5 и разработать OmniAuth 1.0.0 facebook с Mongoid
https://github.com/plataformatec/devise/wiki/OmniAuth:-Overview
Но это руководство его для Mysql, я думаю. Im работает с Mongoid.
У меня есть попытаться обновить запрос для Mongoid синтаксиса:
В omniauth_callbacks_controller.rb
если @ user.persisted? я изменен если @ user.create
В модели user.rb
У меня есть изменения если пользователь = User.find_by_email (data.email) по если пользователь = User .где (электронная почта: (data.email))
проблема заключается в том, что в функции обратного вызова, когда пользователь вернется из Facebook я получаю следующую ошибку:
Could not find a valid mapping for #<Mongoid::Criteria
selector: {:email=>"emailusercomebackfacebook"},
options: {},
class: User,
embedded: false>
Любая идея? Где я могу получить руководство или руководство для нового проекта и omniauth для Mongoid?
Спасибо!
Попробуйте поместить карту после того, где и посмотреть, что она возвращает. ('User.where (электронная почта: (data.email)). Map'). –
Я получаю следующее сообщение в контроллере: ** undefined method save for # ** Если я поставлю '@ user.save' или' @ user.create' в условное от контроллера. Если я ставлю 'if @ user', я получаю:' RuntimeError в Users :: OmniauthCallbacksController # facebook Не удалось найти допустимое сопоставление для # "emailusercomebackfacebook" }, options: {}, класс: Пользователь, embedded: false> : map> ' –
hyperrjas