2012-07-02 2 views
0

Я пытаюсь извлечь и сохранить в своем db, uid аутентификации пользователя Omniauth.Проблемы с извлечением Facebook Omniauth Authentication uid on Rails 3.1

Когда я выдать команду user.authentications, отображается результирующий массив:

[< идентификатор аутентификации: 3, идентификатор_пользователя: 63, поставщик: "facebook", UID: "123456789", created_at: «2012-07-02 02:10:48», updated_at: «2012-07-02 02:10:48»>]

Но когда я выполняю user.authentications.last, чтобы получить вышеуказанную аутентификацию из 1 массива предметов, я получаю:

< Аутентификация: 0x007f837d32e288>

Почему не отображаются все параметры, идентификатор, user_id, поставщик, UID, и т.д. Я не могу получить доступ и извлечь UID, таким образом. Я пытаюсь запустить user.authentications.last.uid.

Спасибо

+0

как вы вызываете user.authentication, если вы еще не сохранили db? Я сохраняю непосредственно запрос omniauth – Hishalv

+0

Я пытаюсь получить индекс всех пользователей. Некоторые из них зарегистрировались через Facebook, другие - по электронной почте/паролю. Я предоставляю условное выражение следующим образом: <% @ users.each do | u | %> \t \t \t \t <%, если u.authentications%> \t \t \t \t \t <% =% u.authentications> \t <%=u.name%> \t \t \t \t \t \t <%else%> \t \t \t \t <%=u.name%> \t \t \t \t \t <%end%> \t \t <%end%> – hjaved

ответ

0

То, что вы видите здесь просто другая строковое представление объектов. Arrayto_s метод дает вам хорошую распечатку, но Authenticationto_s нет. Попробуйте user.authentications.last.inspect, если вы просто хотите посмотреть на него.

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