No creo que un intervalo sea realmente lo que quieres para eso. Un intervalo representa un lapso de tiempo sin puntos finales específicos; por ejemplo, agrega un intervalo a un tiempo existente para obtener otro tiempo. Estaría mejor con dos momentos distintos:
add_column :merchants, :order_from, :time, :null => false
add_column :merchants, :order_to, :time, :null => false
Luego, si por alguna razón necesita saber cuántas horas están abiertos para la entrega, puede construir un intervalo restando :order_from
de :order_to
.
Si realmente debe usar un intervalo, entonces deberá construir un valor como este:
:delivery_time => "interval '11 hour'"
Observe cómo esto ilustra que un intervalo no es un rango de tiempo específico desde A a B , es solo un rango de tiempo de cierta duración (sin puntos finales especificados).