Я создаю модуль отправки сообщений. Он будет обрабатывать сообщения о очередности из запроса, который будет подхвачен фоновым работником для отправки электронной почты/SMS (или журнала для тестирования).Rails: Когда модель? Когда lib?
Вопрос: это модель (под/приложение/модели) или lib (под/lib).
Я бы хотел, чтобы на этой религии была какая-то религия.
Теория A: (Моя нынешняя теория) Если вы не подклассифицируете ActionMailer :: Base или ActiveRecord :: Base и т. Д., Ваш код должен войти в lib.
Теория B: (Теория, к которой я склоняюсь) Вещи, которые специфичны для приложения, должны быть в модели. Все, что может быть общего использования, должно быть в lib.
Теория C: только модели данных должны быть в «моделях». Однако подклассы ActionMailer нарушают это правило.
Насколько я знаю, в любом случае это будет нормально работать, но я ищу любые тонкие функциональные или философские причины для одного и другого.
Мысли?
Я согласен с вами: если он не наследуется от ActiveRecord и co., Он не должен быть моделью. Мне нечего сказать, чтобы превратить это мнение в полный ответ. ^^ – marcgg