From ed776fa9b9149e562a77d9aa7d30bc7a74c142a9 Mon Sep 17 00:00:00 2001 From: z9hang Date: Tue, 6 Jan 2015 16:51:44 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E4=BF=AE=E6=AD=A3=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E7=BC=96=E8=BE=91=E6=8E=A5=E5=8F=A3=E6=8A=A5=E9=94=99=E9=97=AE?= =?UTF-8?q?=E9=A2=98=E3=80=822=E3=80=81=E4=BF=AE=E6=AD=A3=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E6=B3=A8=E5=86=8C=EF=BC=8C=E7=BC=96=E8=BE=91=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E6=8E=A5=E5=8F=A3=E8=BF=94=E5=9B=9E=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E4=B8=8D=E6=AD=A3=E7=A1=AE=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/api/mobile/apis/users.rb | 2 +- app/api/mobile/entities/user.rb | 7 ++++++- app/services/users_service.rb | 12 ++++++++++-- 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/app/api/mobile/apis/users.rb b/app/api/mobile/apis/users.rb index a566b702d..5d1455a78 100644 --- a/app/api/mobile/apis/users.rb +++ b/app/api/mobile/apis/users.rb @@ -35,7 +35,7 @@ module Mobile authenticate! us = UsersService.new ue = us.edit_user params.merge(id: current_user.id) - present :data, ue.user, with: Mobile::Entities::User + present :data, ue,with: Mobile::Entities::User present :status, 0 end diff --git a/app/api/mobile/entities/user.rb b/app/api/mobile/entities/user.rb index 3c3356b46..2a4c0cdaa 100644 --- a/app/api/mobile/entities/user.rb +++ b/app/api/mobile/entities/user.rb @@ -3,7 +3,12 @@ module Mobile class User < Grape::Entity def self.user_expose(f) expose f do |u,opt| - u.send(f) if u.respond_to?(f) + if u.is_a?(Hash) && u.key?(f) + u[f] + #else + # u.send(f) if u.respond_to?(f) + end + end end diff --git a/app/services/users_service.rb b/app/services/users_service.rb index c58956994..82b88befb 100644 --- a/app/services/users_service.rb +++ b/app/services/users_service.rb @@ -36,7 +36,11 @@ class UsersService ue.user_id = @user.id ue.save end - @user + img_url = url_to_avatar(@user) + gender = @user.user_extensions.gender.nil? ? 0 : @user.user_extensions.gender + work_unit = get_user_work_unit @user + location = get_user_location @user + {:id => @user.id, :img_url => img_url, :nickname => @user.login, :gender => gender, :work_unit => work_unit, :mail => @user.mail, :location => location, :brief_introduction => @user.user_extensions.brief_introduction} end #显示用户 @@ -95,7 +99,11 @@ class UsersService logger.error "[Error] avatar : users_service#edit_user ===> #{e}" end end - [:user_extensions =>@se,:img_url => url_to_avatar(@user),:work_unit => get_user_work_unit(@user),:location => get_user_location(@user)] + img_url = url_to_avatar(@user) + gender = @user.user_extensions.gender.nil? ? 0 : @user.user_extensions.gender + work_unit = get_user_work_unit @user + location = get_user_location @user + {:id => @user.id, :img_url => img_url, :nickname => @user.login, :gender => gender, :work_unit => work_unit, :mail => @user.mail, :location => location, :brief_introduction => @user.user_extensions.brief_introduction} end #获取用户的工作单位