0

小数点以下 10 桁でデータベースに保存したいのですが、GUI では小数点以下 2 桁しか表示されません。

データ型は関係ありません。

これを行う簡単な方法はありますか?

ありがとうヘンリック

4

2 に答える 2

1

答えは実際には 2 つあります。

  1. データの保存方法は?

    CharField などとして保存しないでください。DecimalFieldまたはFloatFieldとして保存するだけです。

    models.DecimalField(..., max_digits=20, decimal_places=10)   
    
  2. 小数点以下 2 桁だけを表示するにはどうすればよいですか?

    floatformat完全な値を入力として受け取り、必要な小数点以下の桁数で丸められた小数を出力するテンプレート タグを使用します。あなたの場合、それは{{ value|floatformat:2 }}.

float と decimal フィールドは同じではないことに注意してください。


[カスタム テンプレート タグが不要であることを指摘したBurhan Khalid 氏の功績による]

于 2013-08-01T09:44:49.820 に答える
0

データ型が問題にならない場合、最も簡単な方法は、データベースにテキストとして保存し、表示するときにその量を解析することです。

>>> silly = '12345.6789098765'
>>> silly[:silly.rfind('.')+3]
'12345.67'

少し高度です。精度が必要ないと仮定すると:

>>> "{0:0.2f}".format(float(silly))
'12345.68'
于 2013-08-01T09:34:41.303 に答える