【发布时间】:2014-01-21 22:45:39
【问题描述】:
我想从他们的 LinkedIn 个人资料(公司名称、职务等)中获取用户的职位信息,但除了基本的个人资料信息(id、姓名、电子邮件、标题和图片)之外,我什么也得不到。我猜这只是一个语法问题,因为我在用户身份验证后请求访问所有字段。
来自用户.rb
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.email = auth.info.email
user.headline = auth.info.headline
**user.company = auth.info.company**
user.avatar = auth.info.image
user.password = SecureRandom.urlsafe_base64(n=6)
user.save!
end
来自devise.rb
config.omniauth :linkedin, "abcdefghijk", "abcdefghijk",
# :scope => 'r_basicprofile r_emailaddress rw_nus r_fullprofile r_contactinfo r_network rw_company_admin',
# :fields =>
:scope => 'r_basicprofile r_emailaddress rw_nus r_fullprofile r_contactinfo r_network rw_company_admin',
:fields => ["id", "email-address", "first-name", "last-name",
"headline", "industry", "picture-url", "public-profile-url",
"location", "connections", "skills", "date-of-birth", "phone-numbers",
"educations", "three-current-positions" ]
我是否需要在 devise.rb 中添加字段,还是我是个白痴并格式化 user.company = auth.info.company 错误?
谢谢!
【问题讨论】:
-
你能得到公司 ID(用户是管理员)吗?
标签: ruby-on-rails api devise linkedin omniauth