加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 如何在Rails中弃用静态方法?

发布时间:2020-12-17 02:20:35 所属栏目:百科 来源:网络整理
导读:根据 Ruby on Rails API文档,您可以借助方法 #deprecate弃用方法.这很好. 我的问题是;是否可以弃用静态方法 – 如果是这样,如何? 对于常规方法,您可以执行以下操作: deprecate :my_methoddef my_method # ...end 这让我很头疼(而且不起作用): deprecate :
根据 Ruby on Rails API文档,您可以借助方法 #deprecate弃用方法.这很好.

我的问题是;是否可以弃用静态方法 – 如果是这样,如何?

对于常规方法,您可以执行以下操作:

deprecate :my_method
def my_method
  # ...
end

这让我很头疼(而且不起作用):

deprecate :"self.my_method"
def self.my_method
  # ...
end

P.s.:我知道我可以从这样的方法发出警告:

def self.my_method
  ActiveSupport::Deprecation.warn "the warning..."
  # ...
end

解决方法

您应该在元类上调用deprecate:

class Test1
  def self.hello
    puts "Test1"
  end
  singleton_class.deprecate :hello
  # or
  class << self ; deprecate :hello ; end
end

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读