У меня есть модель отношения класса «хаб и спица», где один класс является центром, и ему нужно знать о произвольном числе спиц-классов. Я проектирую класс Hub, чтобы быть частью драгоценного камня, и я хочу, чтобы спицы определялись пользователем этого драгоценного камня. Из-за этого я не могу определить спицы внутри класса хаба, я должен оставить его пользователю, чтобы определить и зарегистрировать спицу. Я попробовал это, не повезло:Ruby/Rails - метод класса вызова из определения внешнего класса
# models/hub.rb
class Hub
@@spokes = []
def self.spokes
@@spokes
end
def self.register_spoke spoke
@@spokes << spoke
end
end
# models/spoke.rb
class Spoke
end
Hub.register_spoke 'Spoke'
Это работает, если вы просто запустить его, но я хочу эти отношения, чтобы установить на время загрузки в приложении Rails, и я не могу получить, что работать. Помогите?
- hub.rb или что-то еще, что этот код находится под папкой моделей в вашем приложении Rails? – slindsey3000
yes, а вызов «register_spoke» находится внизу слова. Rb –
Я поместил этот код в приложение Rails и работал как ожидалось. – slindsey3000