単純な「3.days」文字列を、言語に応じて適切なロケールを使用して画面に「3 days」と表示する文字列に変換する必要があります。
Railsでこれを行う簡単な方法がおそらくあると思いますが、見つけられないようです。
単純な「3.days」文字列を、言語に応じて適切なロケールを使用して画面に「3 days」と表示する文字列に変換する必要があります。
Railsでこれを行う簡単な方法がおそらくあると思いますが、見つけられないようです。
結果を求めてくださいinspect
。文字列を返すために上書きされました"3 days"
:
Loading development environment (Rails 3.2.6)
irb(main):001:0> 3.days.inspect
=> "3 days"
舞台裏で3.days
は、その期間の秒数を返しています。
irb(main):001:0> puts 3.days
259200
3
その整数値を保存している場合は、数値を1日の秒数で割ることで、最初に戻ることができます。
num_days = 3.days / 1.day
puts "#{num_days} days" # 3 days
入力が文字列で、出力も文字列にする必要がある場合、1 つの解決策は gsub を使用して「.」を置き換えることです。と ' '
1.9.3p194 :004 > '3.days'.gsub('.', ' ')
=> "3 days"