django.contrib.humanize —Djangoのドキュメント

提供:Dev Guides
< DjangoDjango/docs/3.2.x/ref/contrib/humanize
移動先:案内検索

django.contrib.humanize

データに「人間味」を加えるのに役立つDjangoテンプレートフィルターのセット。

これらのフィルターをアクティブにするには、'django.contrib.humanize':setting: `INSTALLED_APPS` 設定に追加します。 それが済んだら、テンプレートで{% load humanize %}を使用すると、次のフィルターにアクセスできるようになります。

apnumber

1〜9の数字の場合、スペルアウトされた数字を返します。 それ以外の場合は、数値を返します。 これはAP通信のスタイルに従います。

例:

  • 1oneになります。
  • 2twoになります。
  • 1010になります。

整数または整数の文字列表現のいずれかを渡すことができます。


intcomma

整数または浮動小数点数(またはいずれかの文字列表現)を、3桁ごとにコンマを含む文字列に変換します。

例:

  • 45004,500になります。
  • 4500.24,500.2になります。
  • 4500045,000になります。
  • 450000450,000になります。
  • 45000004,500,000になります。

フォーマットのローカリゼーションが有効になっている場合は尊重されます。 'de'言語の場合:

  • 45000'45.000'になります。
  • 450000'450.000'になります。


intword

大きな整数(または整数の文字列表現)をわかりやすいテキスト表現に変換します。 1.0を単数形のフレーズとして翻訳し、他のすべての数値を複数形として翻訳します。これは、一部の言語では正しくない場合があります。 100万を超える数に最適です。

例:

  • 10000001.0 millionになります。
  • 12000001.2 millionになります。
  • 12000000001.2 billionになります。
  • -1200000000-1.2 billionになります。

10 ^ 100(Googol)までの値がサポートされています。

フォーマットのローカリゼーションが有効になっている場合は尊重されます。 'de'言語の場合:

  • 1000000'1,0 Million'になります。
  • 1200000'1,2 Millionen'になります。
  • 1200000000'1,2 Milliarden'になります。
  • -1200000000'-1,2 Milliarden'になります。

バージョン3.1で変更:負の整数のサポートが追加されました。


naturalday

当日または1日以内の日付の場合は、必要に応じて「今日」、「明日」、または「昨日」を返します。 それ以外の場合は、渡されたフォーマット文字列を使用して日付をフォーマットします。

引数: :tfilter: `date` タグで説明されている日付フォーマット文字列。

例(「今日」が2007年2月17日である場合):

  • 16 Feb 2007yesterdayになります。
  • 17 Feb 2007todayになります。
  • 18 Feb 2007tomorrowになります。
  • それ以外の日は、指定された引数、または引数が指定されていない場合は:setting: `DATE_FORMAT` 設定に従ってフォーマットされます。


naturaltime

日時値の場合、何秒、数分、または何時間前かを表す文字列を返します。値が1日以上経過している場合は、:tfilter: `timesince` 形式にフォールバックします。 日時の値が将来の場合、戻り値は自動的に適切なフレーズを使用します。

例(「now」が2007年2月17日16:30:00の場合):

  • 17 Feb 2007 16:30:00nowになります。
  • 17 Feb 2007 16:29:3129 seconds agoになります。
  • 17 Feb 2007 16:29:00a minute agoになります。
  • 17 Feb 2007 16:25:354 minutes agoになります。
  • 17 Feb 2007 15:30:2959 minutes agoになります。
  • 17 Feb 2007 15:30:0159 minutes agoになります。
  • 17 Feb 2007 15:30:00an hour agoになります。
  • 17 Feb 2007 13:31:292 hours agoになります。
  • 16 Feb 2007 13:31:291 day, 2 hours agoになります。
  • 16 Feb 2007 13:30:011 day, 2 hours agoになります。
  • 16 Feb 2007 13:30:001 day, 3 hours agoになります。
  • 17 Feb 2007 16:30:3030 seconds from nowになります。
  • 17 Feb 2007 16:30:2929 seconds from nowになります。
  • 17 Feb 2007 16:31:00a minute from nowになります。
  • 17 Feb 2007 16:34:354 minutes from nowになります。
  • 17 Feb 2007 17:30:29an hour from nowになります。
  • 17 Feb 2007 18:31:292 hours from nowになります。
  • 18 Feb 2007 16:31:291 day from nowになります。
  • 26 Feb 2007 18:31:291 week, 2 days from nowになります。


ordinal

整数を文字列として序数に変換します。

例:

  • 11stになります。
  • 22ndになります。
  • 33rdになります。

整数または整数の文字列表現のいずれかを渡すことができます。