首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我可以用module#prepend代替alias_method_chain来修补这个问题吗?

我可以用module#prepend代替alias_method_chain来修补这个问题吗?
EN

Stack Overflow用户
提问于 2015-08-18 01:41:18
回答 1查看 941关注 0票数 0

我正在修补concern in the Devise Token Auth gem

我让它在alias_method_chain上工作,但我想知道在这种情况下是否可以使用module#prepend

注意:我们使用的是ruby 2.2.x

现有:

代码语言:javascript
复制
DeviseTokenAuth::Concerns::User.module_eval do
  def token_validation_response_with_customer_info
    json = token_validation_response_without_customer_info
    # add some customer stuff based on has_role? check
    json
  end

  alias_method_chain :token_validation_response, :customer_info
end
EN

回答 1

Stack Overflow用户

发布于 2016-01-21 20:10:02

你可以试试

代码语言:javascript
复制
DeviseTokenAuth::Concerns::User.prepend(
  Module.new do
    def token_validation_response
      json = super
      # add some customer stuff based on has_role? check
      json
    end
  end
)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32056529

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档