2
Я хочу иметь возможность динамически создавать классы для сценариев вне моего приложения Rails, которые наследуются от ActiveRecord.Динамически создавать класс, унаследованный от ActiveRecord?
Я застрял на что-то вроде этого:
require 'active_record'
def create_arec(table_name)
Class.new ActiveRecord::Base do
self.table_name = table_name
yield
end
end
Band = create_arec 'bands' do
scope :only_rock, -> {where genre: 'rock'}
end
rock_bands = Band.only_rock #undefined method `only_rock'
Как заставить его работать, или кто-то может показать мне лучший способ сделать это?
чувак! серьезно? Зачем? и если! просто используйте 'class_eval'. вы будете убиты кем-то, если они будут поддерживать это! я говорю вам, не шучу! – phoet
Возможно, мне было любопытно, если вы можете уступить этот блок внутри блока для Class.new, а затем на самом деле использовать его. Во всяком случае, да, спасибо, class_eval будет намного лучше. Мне нравится рубин. –
напишите ответ на свой вопрос и отметьте его разрешенным, чтобы людям больше не приходило в глаза. – phoet