ROR:从另一个方法中分配方法的变量而不传递任何东西

时间:2012-08-29 07:43:22

标签: ruby-on-rails ruby methods parameters

我有一个方法,比如说

def method1
  method2
end

将调用另一种方法,比如说

def method2
  @variable
end

如何在不传递任何参数的情况下从method1为此@variable分配值?有可能吗?

1 个答案:

答案 0 :(得分:2)

因为它是一个实例变量,是的,它是可能的:

class Foo
  def method1
    b = Baz.new
    b.variable = 'bar'
    b.method2
  end
end

class Baz
  attr_accessor :variable

  def method2
    @variable
  end
end

f = Foo.new
f.method1 # => "bar"