【发布时间】:2013-12-03 19:25:26
【问题描述】:
我正在使用 RocketPants 制作 Rails API。对于 JSON 序列化,我使用 active_model_serializers,对于 OAuth - Doorkeeper。
问题在于访问class UserSerializer < ActiveModel::Serializer 中的current_user 辅助方法。错误:
NameError (undefined local variable or method `request' for #<UserSerializer:0xb5892118>)
current_user helper 使用这个sn-p:
User.find(doorkeeper_token.resource_owner_id) if doorkeeper_token
而doorkeeper_token 是:
def doorkeeper_token
methods = Doorkeeper.configuration.access_token_methods
@token ||= OAuth::Token.authenticate request, *methods
end
所以我发现,Serializer 中没有可访问的 request 对象。我怎样才能使它可访问?还是应该有其他方式来实现current_user?
提前致谢
【问题讨论】:
-
有一个未解决的问题:github.com/Sutto/rocket_pants/issues/102
标签: ruby-on-rails active-model-serializers doorkeeper