2010-09-27 15 views

Respuesta

56

Puede cambiar esto a través del archivo de configuración regional I18n. En config/lugares/en.yml ...

"en": 
    datetime: 
    distance_in_words: 
     about_x_hours: 
     # The defaults are "about 1 hour" and "about %{count} hours" 
     one: "1 hour" 
     other: "%{count} hours" 

Véase el default locale file in actionpack para una referencia completa.

+0

En realidad, esto daría un resultado incorrecto. Por ejemplo 'helper.distance_distance_of_time_in_words (1.hour + 29.minutes)' con esta salida de solución "1 hora", y si agrega un minuto, se emitiría "2 horas". Es por eso que se llama "alrededor de 1 hora" y "alrededor de 2 horas" originalmente. Utiliza intervalos de tiempo basados ​​en el redondeo hacia arriba y hacia abajo para determinar cuál es la hora completa más cercana o similar. Sugiero usar la gema dotiw en cambio, para tiempos precisos. https://github.com/radar/dotiw – Magne

+0

gracias me salvaste el día – Deepak

6

Puedes usar mi gema/complemento dotiw para eso. Agrega un par de opciones adicionales y tiene una precisión mayor que la que ofrece Rails.

distance_of_time_in_words(time1, time2, :only => [:days, :hours, :minutes]) 
+0

thxs, pero me gusta la falta de precisión para la aplicación que estoy construyendo. ¿Tiene más que ver con quitar la palabra "sobre" tiene sentido? – AnApprentice

+0

@TheApprentice, bueno, en ese caso usa la opción ': vague' en dotiw. –

+0

@AnApprentice: Esta debería ser la respuesta aceptada, ya que la respuesta de Dave dará el resultado incorrecto/no deseado. – Magne

12

que tenían el mismo problema, he acabado haciendo esto, sobre todo porque todavía estoy en el aire acerca de si o no para eliminar el sobre a nivel mundial -

<p class="entry_created_at"><%= time_ago_in_words(plate.created_at).gsub('about','') + ' ago' %></p> 
Cuestiones relacionadas