Non credo che Interval
ti aiuterà in questo, in quanto non sarebbe in grado di forzare in funzioni di data [ora] specifiche del DB. Quindi dovresti probabilmente utilizzare le funzioni date[time] specifiche della piattaforma per risolvere questo problema.
Se stai usando postgresql , il codice seguente dovrebbe funzionare (supponendo che Items.days
è un numero intero):
q = (session.query(Item)
.filter(func.age(now, Item.created_on) <=
func.make_interval(0, 0, 0, Item.days)
)
)
Vedi postgres'
Funzioni e operatori data/ora
per ulteriori informazioni.