我正在为Rails应用创建一个API,我希望为API调用返回User
个对象,但没有crypted_password
,salt
或login_token
属性。
有没有办法做这样的事情:
do api_fetch_user(u)
user=User.find(u)
return user(:filter=>"crypted_password", "salt", "login_token")
end
答案 0 :(得分:3)
def api_fetch_user(user)
user.attributes.select { |key,v| AVAILABLE_USER_FIELDS.include?(key) }
end
答案 1 :(得分:2)
这可能适用于您的情况,但我没有亲自尝试过。 尝试在返回Object之前将Filtered Attributes重置为nil。
do api_fetch_user(u)
user=User.find(u)
user.crypted_password = ''
user.salt = ''
user.login_token = ''
return user
end