Djangoモデルの場合、特別な月を設定するために余分なフィールドが必要でした。これは、choice属性とタプルのセットで行われました。タプルのタプル値をインデックスで取得する
class Timeline(models.Model):
MONTHS = (
(1, _("January")),
(2, _("February")),
(3, _("March")),
(4, _("April")),
(5, _("May")),
(6, _("June")),
(7, _("July")),
(8, _("August")),
(9, _("September")),
(10, _("October")),
(11, _("November")),
(12, _("December")),
)
tldate_mth = models.IntegerField(_("Month"), choices=MONTHS, default=1)
管理セクションでこれは素晴らしいです。 「:タプルではないX(X)tuple.index」:今、私は私のテンプレートの月出力したい
# ...
def to_string(self):
return "%s (%s/%d)" % (self.title, self.MONTHS.index(self.tldate_mth), self.tldate_yr)
しかし、私は、メッセージが表示されました。何が間違っていたのですか?
def to_string(self):
return "%s (%s/%d)" % (self.title, [month[0] for month in self.MONTHS].index(self.tldate_mth), self.tldate_yr)
Djangoの格納選択肢フィールドのタプル(値がこの場合1〜12)の最初の値のみ: