Ruby on rails Omniauth使用Twitter在用户创建后不存储某些值
我遵循RubyonRails教程,创建了自己的身份验证和注册系统。我现在正试图用使用Twitter身份验证的Omniauth来取代它 我按照railscast中的所有步骤进行了操作,但现在我尝试在用户创建时保存更多的用户信息字段,但它们没有保存。以下是创建用户的代码:Ruby on rails Omniauth使用Twitter在用户创建后不存储某些值,ruby-on-rails,omniauth,Ruby On Rails,Omniauth,我遵循RubyonRails教程,创建了自己的身份验证和注册系统。我现在正试图用使用Twitter身份验证的Omniauth来取代它 我按照railscast中的所有步骤进行了操作,但现在我尝试在用户创建时保存更多的用户信息字段,但它们没有保存。以下是创建用户的代码: def self.create_with_omniauth(auth) create! do |user| user.provider = auth["provider"] user.uid =
def self.create_with_omniauth(auth)
create! do |user|
user.provider = auth["provider"]
user.uid = auth["uid"]
user.name = auth["user_info"]["name"]
user.email = auth["user_info"]["email"]
user.time_zone = auth["user_info"]["time_zone"]
end
end
如果需要,这是我为当前用户编写的代码:
def current_user
@current_user ||= User.find(session[:user_id]) if session[:user_id]
end
另外,在哪里可以找到使用twitter登录的用户的用户信息列表?我需要一些其他的信息,但似乎找不到
谢谢 简单的答案是twitter不允许你获取他们的电子邮件地址。简单的答案是twitter不允许你获取他们的电子邮件地址。你可以查看
auth.inspect
查看twitter发送回的确切内容。你可以查看auth.inspect
查看twitter发送回的确切内容。