Как я могу ссылаться на объект из метода, не передавая его как переменную?ссылочный объект, не переходя в новый объект
Я получаю сообщение об ошибке:
NameError: undefined local variable or method ‘my_object’ for Myclass:Class
class B
attr_accessor :somethings
include Enumerable
def initialize(*values)
self.somethings = []
end
end
my_object = B.new({d:'d'})
class Myclass
def self.my_method
p my_object
end
end
Run: Myclass.my_method
Что я НЕ хочу, чтобы сделать для всех моих методов ...
def self.my_method(my_object)
p my_object
end
Я мог бы также решить вопрос с использование от глобальной переменной
$my_object = B.new({d:'d'})
Однако я действительно хочу, чтобы переменная была доступна для моих методов в классе Myclass.
Можете ли вы выразиться лучше? –
Пример, который вы дали, как и ожидалось (при отсутствии неопределенной функции 'add_my_values'). Просьба привести пример, который создает описание NameError. –
@BorisStitnicky Я попытался переписать сообщение, надеюсь, это станет более ясным. – user2012677