2011-09-12 13 views
13

私は数表し月持っていると私は、月の名前とそれを交換したい、日付フィルタが機能していない:月の名前を番号で表示する方法は?

{{ monthnumber|date:"M" }} 

私は2つのリンク配置したい - 来月、前の月を、私は月に数だけを持っています。

どうすればよいですか?

+0

を読んで、あなたは[Djangoの日基づくクラスベースのビュー](httpsで達成しようとしているかを考え、これは必要とされているかどうかを確認します/ /docs.djangoproject.com/en/1.11/ref/class-based-views/generic-date-based/)を念頭に置いて – surfer190

答えて

24

月の名前に数値を変換するには、カスタムテンプレートフィルタが必要です。あなたは、標準ライブラリからcalendarモジュールを使用する場合、かなりシンプル:

import calendar 

@register.filter 
def month_name(month_number): 
    return calendar.month_name[month_number] 

使用例: {{ 5|month_name }} 意志出力May

+0

user1242163さんの回答にカスタムフィルタは必要ありません。 – Matt

+2

user1242163の答えでは、整数ではなくdatetimeオブジェクトが必要です –

6

はまあ、そうではありません。

{{ monthnumber|date:"M" }} 

あなたはこれを試してみてください。

{{ datetimeobj|date:"M" }} 
9

あなたが使用する必要があります。

{{ datetimeobj|date:"F" }} 

この質問に来て他の人のためにthis

関連する問題