У меня была похожая проблема, но я также хотел изменить способ, которым AR устанавливал table_name для моих моделей, чтобы, например, модель MyProject имела имя таблицы "MY_PROJECT".
Я достиг этого, создавабстрактный класс AR, как сказал @ FFrançois, и с унаследованным методом, где я меняю имя таблицы, например:
class MyModel < ActiveRecord::Base
self.abstract_class = true
def self.inherited(subclass)
subclass.table_name = subclass.name.underscore.upcase
end
end
class MyProject < MyModel
end
Теперь MyProject.table_name дает MY_PROJECT:)