Comment formater une date avec le suffixe 'th' en ruby on rails, comme 'sun oct 5th' ?

Créé le 10 Dec 2022 - Mis à jour le 04 Jul 2023 - Créé par Fabien Berthoux - ruby-on-railsruby

Formater une date avec le suffixe 'th' en Ruby on Rails n'est pas compliqué. Il suffit d'utiliser la méthode strftime intégrée à Ruby on Rails. Cette méthode permet de spécifier le format de date souhaité et de formater les données date et heure en fonction de ce format. Par exemple, pour formater une date avec le suffixe 'th' comme 'Sun Oct 5th', vous devez utiliser le format de date '%a %b %-dth'. Le code suivant donnera le résultat attendu : ```ruby require 'date' date = Date.today p date.strftime("%a %b %-dth") #=>> "Sun Oct 5th" ``` Il est important de noter que le format '%-dth' est spécifique à Ruby on Rails et ne fonctionnera pas dans d'autres langages.


Qu'est-ce que la méthode strftime ?

strftime est une méthode intégrée à Ruby on Rails qui permet de formater des données date et heure en fonction d'un format spécifique. Elle prend en entrée un format et une date ou heure et retourne une chaîne de caractères correspondant au format spécifié. Par exemple, pour formater une date sous le format '%a %b %-dth', vous devez utiliser la méthode strftime comme suit : ```ruby require 'date' date = Date.today p date.strftime("%a %b %-dth") #=>> "Sun Oct 5th" ```


Comment formater une date avec le suffixe 'st' ?

Pour formater une date avec le suffixe 'st', vous devez utiliser le format de date '%a %b %-dst'. Le code suivant donnera le résultat attendu : ```ruby require 'date' date = Date.today p date.strftime("%a %b %-dst") #=>> "Sun Oct 5st" ```


Comment formater une date avec le suffixe 'nd' ?

Pour formater une date avec le suffixe 'nd', vous devez utiliser le format de date '%a %b %-dnd'. Le code suivant donnera le résultat attendu : ```ruby require 'date' date = Date.today p date.strftime("%a %b %-dnd") #=>> "Sun Oct 5nd" ```


Comment formater une date avec le suffixe 'rd' ?

Pour formater une date avec le suffixe 'rd', vous devez utiliser le format de date '%a %b %-drd'. Le code suivant donnera le résultat attendu : ```ruby require 'date' date = Date.today p date.strftime("%a %b %-drd") #=>> "Sun Oct 5rd" ```


Comment formater une date avec le suffixe 'th' et un espace après le jour ?

Pour formater une date avec le suffixe 'th' et un espace après le jour, vous devez utiliser le format de date '%a %b %-d th'. Le code suivant donnera le résultat attendu : ```ruby require 'date' date = Date.today p date.strftime("%a %b %-d th") #=>> "Sun Oct 5 th" ```