【问题标题】:Ruby: Creating an "attr_accessor :arg1, :arg2, :arg3" functionality [closed]Ruby:创建“attr_accessor :arg1, :arg2, :arg3”功能 [关闭]
【发布时间】:2013-01-01 20:22:57
【问题描述】:

所以我希望能够像这样定义一个类:

class MyHouse < Home
  things :bed, :lamp, :chair
end

Home 负责将这些“东西”放入数组中,如下所示:

class Home
  attr_accessor :things

  def things(*things)
    @things = []
    things.each { |thing| @things << thing }
  end
end

问题是我明白了:

NoMethodError: undefined method `things' for MyHouse:Class

我知道有办法做到这一点。感谢您的帮助,

谢谢,

帕春

【问题讨论】:

    标签: ruby metaprogramming attr-accessor


    【解决方案1】:

    def things 应该是def self.things

    这使它成为类方法而不是实例方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-28
      • 2020-12-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多