Estoy haciendo un pequeño módulo de envío de mensajes. Se encargará de que los mensajes de colas de una solicitud sean recogidos por un trabajador de segundo plano para enviar correos electrónicos/SMS (o registrarlos apropiadamente para las pruebas).Rieles: ¿Cuándo un modelo? Cuando una lib?
Pregunta: este es un Modelo (en/app/modelos) o una lib (en/lib).
me gustaría alguna religión en esto.
Teoría A: (Mi teoría actual) A menos que esté subclasificando ActionMailer :: Base o ActiveRecord :: Base, etc., su código debe entrar en lib.
Teoría B: (Teoría hacia la que me inclino) Las cosas que son específicas de la aplicación deben estar en el modelo. Todo lo que podría ser de uso general debería estar en lib.
Teoría C: solo los "modelos de datos" deben estar en 'modelos'. Las subclases de ActionMailer rompen esta regla, sin embargo.
Por lo que yo sé, de cualquier manera funcionará bien, pero estoy buscando razones funcionales o filosóficas sutiles para una u otra.
¿Pensamientos?
Estoy de acuerdo con usted:. Si no hereda de ActiveRecord y co, que no debería ser un modelo. No tengo suficiente que decir para convertir esa opinión en una respuesta completa. ^^ – marcgg