[ruby-it] organizzare i modelli.
Pietro Giorgianni
giorgian a gmail.com
Ven 12 Mar 2010 22:44:40 CET
Il 12 marzo 2010 22.36, Pietro Giorgianni <giorgian a gmail.com> ha scritto:
>> Manca un elemento: e se volessi sapere quante consegne e a chi sono
>> state fatte in una certa data?
>
> Delivery.find(:all , :conditions => ['delivered_at > ? AND
> delivered_at < ?', mezzanotte_prima, mezzanotte_dopo])
named_scope :delivered_at_date, lambda {|time| :conditions =>
['delivered_at > ? AND delivered_at < ?', time.beginning_of_day,
time.end_of_day]}
Delivery.delivered_at_date 3.months.ago
p.s. se a un certo punto ti accorgi che stai facendo troppe query
troppo diversificate, tanto da non poterne uscire con due o tre
named_scope, potrebbe avere senso creare un modello Date, o un modello
DateRange, ma si tratterebbe di modelli tableless, cioč non associati
a una certa tabella.
In pratica crei una classe a cui delegare i calcoli dei periodi; qui:
http://asciicasts.com/episodes/193-tableless-model (versione testo)
http://railscasts.com/episodes/193-tableless-model (versione con video)
trovi un esempio, non legato alle date, ma da cui puoi trarre spunto.
Ma, ripeto, ha senso solo se non te la puoi cavare con un paio di named scope.
pietro
More information about the Ml
mailing list