Saya menggunakan Date.today.monthuntuk menampilkan nomor bulan. Apakah ada perintah untuk mendapatkan nama bulan, atau apakah saya perlu membuat kasus untuk mendapatkannya?
Hanya peringatan bagi siapa saja yang menggunakan Ruby 2, harus menggunakan Time.new.strftime("B")Today & strftime
dihapus
7
Tidak benar. Keduanya ada di Ruby 2.0 dan Ruby 2.1 . Perhatikan, bahwa mereka tidak tersedia sampai Anda require "date", karena mereka ada di std-lib, bukan core.
pbyrne
16
Jika Anda peduli dengan lokalnya, Anda harus melakukan ini:
Jawaban:
Date::MONTHNAMES[Date.today.month]
akan memberimu "Januari". (Anda mungkin perlurequire 'date'
terlebih dahulu).sumber
Date.today.strftime("%B")
adalah cara yang lebih baik untuk melakukan ini, imho. Dan itu tidak spesifik untuk rel. Lihat jawaban di bawah oleh leafo.require 'date'
terlebih dahulu.Anda juga dapat menggunakan I18n:
sumber
Anda dapat menggunakan
strftime
:http://www.ruby-doc.org/stdlib-1.9.3/libdoc/date/rdoc/Date.html#strftime-method
sumber
Time.new.strftime("B")
Today & strftimerequire "date"
, karena mereka ada di std-lib, bukan core.Jika Anda peduli dengan lokalnya, Anda harus melakukan ini:
sumber
I18n.l(Date.new, format: '%B')
mulai dengan Januari. Jika Anda ingin menambahkan bulan, seperti memiliki Februari, gunakanDate.new + 1.month
Untuk Ruby 1.9 saya harus menggunakan:
sumber
HTML Pilih bulan dengan I18n:
sumber