Advice sobre validación del modelo "dinámico"

Tengo un modelo llamadoCalendar.

Las validaciones que se le aplicarán varían de las selecciones realizadas por el usuario.

Sé que puedo usar validación personalizada + validación condicional para hacer esto, pero no me parece muy limpio.

Me pregunto si puedo almacenarlo en una columna de base de datos y pasarlo a un método de validación "genérico".

¿Qué piensas

Explicando más:

Un usuario tiene un calendario.
Otros usuarios que tienen acceso a este calendario, pueden programar citas.

Para programar una cita, la aplicación debe validarse de acuerdo con las reglas definidas por el propietario del calendario.

Hay muchas combinaciones, así que lo que vine a hacer es:

Cree clases de validación personalizadas para cada una de las validaciones posibles y haga que sean condicionales.

class Calendar
  validate_allowed_in_hollydays :appointment_date if :allowedinhollydays?
  (tenths of other cases)
  ...
end

Esto funciona, pero se siente mal.

Estoy pensando en almacenar en algún lugar qué reglas deberían aplicarse a ese calendario y luego hacer algo como:

validate_stored_rules :appointment_date

Respuestas a la pregunta(3)

Su respuesta a la pregunta