วันจันทร์ที่ 15 พฤศจิกายน พ.ศ. 2553

Rails 2.3.5 การเปลี่ยน Date format

ปัญหาคือ เวลาเราต้องการแสดงวันที่ ใน Rails view นั้น มันจะ ประหลาดๆ อย่างนี้

Mon Nov 15 14:36:43 +0700 2010

ทั้งๆที่ใจเรา ไม่อยากได้อย่างนี้ (อยากได้ แบบแสดงวันที่ เป็นภาษาไทยเลย) แล้วเราจะเปลี่ยนรูปแบบของมันได้ไหม ? วันนี้เอาวิธีเปลี่ยนแบบง่ายๆมาก่อน คือ เปลี่ยนรูปแบบการแสดงผลก่อน ส่วนภาษาไทยเอาไว้คราวหน้า

สร้างไฟล์ใหม่ my_time_format.rb ในโฟลเดอร์ /config/initializers


ActiveSupport::CoreExtensions::Time::Conversions::DATE_FORMATS.merge!({
:quick => "%m %d, %Y at %I:%M %p",
:simple => "%A %B %d, %Y",
:end_date => "%B %d, %Y"
})


จากนั้น ทดสอบ ดูใน ./scripts/console


[nutjang@bsd-1279 ~/rails/demo_app]$ ./script/console
Loading development environment (Rails 2.3.5)
>> Time.now
=> Mon Nov 15 14:36:43 +0700 2010
>> Time.now.to_s(:simple)
=> "Monday November 15, 2010"
>> Time.now.to_s(:end_date)
=> "November 15, 2010"
>>


จบ.

ไม่มีความคิดเห็น:

แสดงความคิดเห็น