Djangoには、(私にとっては)使いやすいテンプレートエンジンが付属しています。文字列や数字の整形もそこそこできて、たとえば小数点以下の桁数を丸めるのには、
{{value|floatformat}} とすれば、OKです。もちろん、桁数の調節も出来ます。詳細は、このあたりを参照してください。 大きな数字になったとき、整数部分に3桁ごとのカンマ(,)を入れてくれるといいなーと思ったのですが、デフォルトではそのようなフィルタが用意されていませんでした。 仕方がないので、テンプレートエンジンをすこし改造です。別に難しいことはなく、ここにも詳細な解説があります。 Pythonインストールディレクトリ/lib/site-packages/django/template/defaultfilters.py に新しい関数として定義すれば良いだけです。たとえば、moneyformatなどとしましょう。 追加したフィルタを、同じファイルの最後の方で、 register.filter(moneyformat) と、登録するのを忘れずに。 3桁ごとにカンマを入れるコードは、もちろん自分で書いてもいいですが、大変参考になるレシピがあります。 やはり、オープンソースってすばらしいですね。 スポンサーサイト
|
デフォルトでありますよ
Re: デフォルトでありますよ
おお、ありがとうございます。Djangoも進化してますねー。
Re: デフォルトでありますよ
リプライありがとうございます。
なるほど。昔はなかったんですねー。 |
|
| ホーム |
|