Hola que tal, bueno este msj es porque se me esta presentando un problema al usar pesisted.
En mi controlador obtengo la informacion de facebook de un usuario, luego si el usuario ya existe lo redirecciono a la authenticacion; de lo contrario le muestro los errores.
Pero al hacer dicha validacion ( if @usuario.persisted? ), me sale el siguiente mensaje de error:
" undefined method `persisted?' for nil:NilClass "
Tengo esto en mi controlloer:
Código Ruby:
Ver originalauth = request.env["omniauth.auth"]
data = {
:nombre => auth.info.first_name,
:apellido => auth.info.last_name,
:username => auth.info.nickname,
:email => auth.info.email,
:provider => auth.provider,
:uid => auth.uid
}
@usuario = Usuario.find_or_create_by_omniauth(data)
if @usuario.persisted?
sign_in_and_redirect @usuario, :event => :authentication
else
session[:Omniauth_errors] = @usuario.errors.full_messages.to_sentence unless @usuario.save
session[:Omniauth_data] = data
redirect_to new_usuario_registration_url
end
Pero no me queda claro, por que sale dicho error. Uso omniauth para obtener la informacion, si alguien me pudiera explicar mejor cual es el problema se lo agradeceria.
Seguire investigando