Hola lista,
estoy realizando un pequeño Blog para aprender RoR y me surge la
siguiente duda a ver si me podrÃan ayudan.
Cada post del Blog, tiene el campo created_at y updated_at.
¿Como puedo buscar los post que se crearon ayer y hoy? Me refiero a si
existe algo asà como:
post.find(:all, :conditions => [‘created_at = ?’, Time.yerterady)
ó
post.find(:all, :conditions => [‘created_at = ?’, Time.today)
Y lo segundo que tampoco me sale es como buscar post entre 2 fechas
dadas.
Muchas gracias por anticipado.
Con Time.now, te dice qué post se ha creado hoy a las x
Tú quieres hoy. Pues Date.today
Para post entre dos fechas : post.find(:all, :conditions => ['created_at
=
? and created_at >= ? ', date1, date2 )
Hola Andrés,
Para los posts de ayer prueba con:
posts = Post.find(:all, :conditions => [
‘created_at >= ? AND created_at < ?’,
Time.now.yesterday.at_midnight,
Time.now.at_midnight])
Puedes usar lo mismo para cualquier par de fechas ordenadas.
Saludos
Muchas gracias a los 2,
con esta información tengo suficiente para ir jugando.
Saludo.
Luis,
Las “columnas mágicas” created_at/updated_at son por convención para un
timestamp, mientras que created_on/updated_on para fechas. Por ese
motivo conviene usar Time en vez de Date. Además, el método
Date.yesterday no existe.
http://api.rubyonrails.com/classes/ActiveSupport/CoreExtensions/Time/Calculations.html
Saludos
Para post entre dos fechas : post.find(:all, :conditions => ['created_at
=
? and created_at <= ? ', date1, date2 ), perdón