настройки настройки отправляем в родительский класс в ruby - PullRequest
1 голос
/ 07 февраля 2011

как я могу написать этот (дочерний) класс следующим образом:

class child < parent
  create_columns :name, :address
end

so that:

class parent
# Can access the create_columns set by the child class?
end

Спасибо.

1 Ответ

1 голос
/ 07 февраля 2011

Вы можете решить эту проблему с помощью метода унаследованных хуков в Ruby, чтобы вы могли отслеживать все дочерние элементы.

class Parent
 self.inherited(base)
    self.children << base
  end
end

class Child < Parent
def initialize
  @@instances << self
end

def self.instances
  @@instances
end

Теперь вы можете делать такие вещи, как Parent.children.each {| child | child.instances.collect (: & name)}. Если имя доступно: -)

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...