Jag tror inte att Interval
kommer att hjälpa dig där, eftersom det inte skulle kunna tvingas till DB-specifika datum[tid] funktioner. Så du bör förmodligen använda plattformsspecifika datum[tid]-funktioner för att lösa detta.
Om du använder postgresql , bör koden nedan fungera (förutsatt att Items.days
är heltal):
q = (session.query(Item)
.filter(func.age(now, Item.created_on) <=
func.make_interval(0, 0, 0, Item.days)
)
)
Se postgres'
Datum/tid-funktioner och operatörer
för mer information.