0

次のような番号を保存しています

2,000

5,000

10,000 

'整数列'を持つデータベース内。アプリに表示すると、次のように表示されます

2.0
5.0

「そのまま」表示するために使用できる列タイプはありますか。以前に文字列を試しましたが、文字列がうまくソートされません。

4

3 に答える 3

0

これを修正するために、データベースにカンマなしで番号を入力しました。その後、数字は10000.0のようにアプリに表示されnumber_to_currency、ドルの値のように見えるように数字を変更していました

于 2012-07-27T02:44:30.400 に答える
0

Rubyでは、このように整数で入力することもできます

10_000
5_000
2_000
于 2012-07-27T05:37:23.723 に答える
0

整数は整数のように出てくるはずです。内部に「2,000」を挿入しようとすると、レールは効果的にto_iを実行します。これは2になります(irb「2,000」.to_iおよび「2_000」.to_iでこれを試して、rubyが整数変換を処理する方法を確認してください)。

ここで、2000を挿入し、整数列では自然ではない、または予期されない2000.0を取得した場合。属性で後処理が行われているか、データベースが10進数/浮動小数点列であると思われます。

Railsコンソール=>

"2,000".to_i => 2
"2_000".to_i => 2000
helper.number_to_currency(2000) => "$2,000.00" 
于 2012-07-27T07:04:56.360 に答える