2013-03-06 2 views
0

У меня есть модель обслуживания, которая имеет метод, который запрашивает поставщик, чтобы получить массив обратно:Где эти методы принадлежат?

class Service < ActiveRecord::Base 
    def query 
    return [1, 2, 3, 4] 
    end 

Я не хранить возвращенный массив в моей ActiveRecord таблице. Теперь я хотел бы создать несколько методов, скажем, is_odd ?, is_even ?, то есть специфический к возвращенному массиву.

С точки зрения соглашений, где я должен хранить эти методы? В новом классе? новый модуль?

ответ

1

Оберните эти данные в новый класс, который имеет эти методы, и ваш метод запроса возвращает экземпляр класса.

Это дает вам место для размещения связанных методов. В зависимости от вашей ситуации это может также помочь вам абстрагироваться от внутреннего представления этой части данных.

Смежные вопросы