J'utilise Date.today.month
pour afficher le numéro du mois. Existe-t-il une commande pour obtenir le nom du mois ou dois-je faire une demande pour l'obtenir?
J'utilise Date.today.month
pour afficher le numéro du mois. Existe-t-il une commande pour obtenir le nom du mois ou dois-je faire une demande pour l'obtenir?
Réponses:
Date::MONTHNAMES[Date.today.month]
vous donnerait "Janvier". (Vous devrez peut-être d' require 'date'
abord).
Date.today.strftime("%B")
est une meilleure façon de faire cela, à mon humble avis. Et ce n'est pas spécifique aux rails. Voir la réponse ci-dessous par notice.
require 'date'
abord.
Vous pouvez également utiliser I18n:
I18n.t("date.month_names") # [nil, "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"]
I18n.t("date.abbr_month_names") # [nil, "Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
I18n.t("date.month_names")[Date.today.month] # "December"
I18n.t("date.abbr_month_names")[Date.today.month] # "Dec"
Vous pouvez utiliser strftime
:
Date.today.strftime("%B") # -> November
http://www.ruby-doc.org/stdlib-1.9.3/libdoc/date/rdoc/Date.html#strftime-method
Time.new.strftime("B")
je dois utiliser Today & strftime sont supprimés de Date
Si vous vous souciez des paramètres régionaux, vous devriez faire ceci:
I18n.l(Time.current, format: "%B")
I18n.l(Date.new, format: '%B')
pour commencer avec janvier. Si vous voulez ajouter des mois, comme avoir février, utilisezDate.new + 1.month