Contacta (+34) 622 045 404

Estudio de desarrollo front-end, maquetación web, diseño y programación WordPress freelance.

Fundado por Alberto Fortes, diseñador y maquetador web HTML5 responsive design, front-end developer JavaScript y programador WordPress freelance a medida desde 2006.

Especializados en outsourcing con importantes clientes finales.

Customizando Fechas en Ruby on Rails

11 Abril, 2007

Para crear calendarios con la fecha de los post. etc como este que acompaña a la entrada en Ruby disponemos del objeto Time.
Time.now Nos devuelve la hora actual.
Si queremos jugar con esto y crear un calendario que acompañe al post tendremos que recurrir a strftime, de manera que, para el campo fecha de un post, sea: post.date, haremos esto:

<% t=post.date %><%= t.day.to_s + " " + t.strftime("%b") %>
<%= t.strftime("%Y") %>

Lo que hemos hecho es utilizar el objeto Time de Ruby para sacar los campos en el formato que queremos de la columna date.
Teniendo en cuenta de que hablamos de ruby on rails para maquetadores web, algunas de las clases del método Time, para lo que nos interesa aquí, son:
Time.now devuelve algo así como => Wed Apr 11 11:27:06 CEST 2007
Para jugar con esto, al modo hecho arriba, y con esta fecha dada:
Time.day, devolvería => 11
Time.mon o Time.month => 4 (número del mes)
Time.hour, devolvería => 11
Time.min, devolvería => 27
Time.sec, devolvería => 06
Time.year, devolvería => 2007
Time.wday, devolvería => 3 (número del día de la semana)

Y lo que más nos interesa: las directivas Time.strftime. Con estas si que podemos jugar bastante, así:
Time.strftime(“%a”), devuelve la abreviatura del día de la semana => Wed
Time.strftime(“%A”), devuelve el día de la semana => Wednesday
Time.strftime(“%b”), devuelve la abreviatura del mes => Apr
Time.strftime(“%B”), devuelve el nombre del mes => April
Time.strftime(“%c”), devuelve => Wed Apr 11 11:27:06 2007
Time.strftime(“%d”), devuelve el día del mes => 11
Time.strftime(“%H”), devuelve la hora en formato 24h => 11:27:06
Time.strftime(“%I”), devuelve la hora en formato 12h => 11:27:06
Time.strftime(“%j”), devuelve el día del año => 101
Time.strftime(“%m”), devuelve el mes del año => 04
Time.strftime(“%M”), devuelve el minuto => 27
Time.strftime(“%p”), devuelve AM o PM => AM
Time.strftime(“%W”), devuelve la semana del año
Time.strftime(“%w”), devuelve el día de la semana => 3
Time.strftime(“%x”), devuelve sólamente la fecha => 11/04/2007
Time.strftime(“%X”), devuelve sólamente la hora => 11:27:06
Time.strftime(“%y”), devuelve el año en dos dígitos => 07
Time.strftime(“%Y”), devuelve el año => 2007