日付ベースのミックスイン—Djangoドキュメント
日付ベースのミックスイン
ノート
これらのミックスインのすべての日付フォーマット属性は、strftime()
フォーマット文字を使用します。 :ttag: `now` テンプレートタグのフォーマット文字は互換性がないため、使用しないでください。
YearMixin
- class YearMixin
日付の年コンポーネントの解析情報を取得して提供するために使用できるミックスイン。
メソッドと属性
- year_format
年を解析するときに使用する
strftime()
形式。 デフォルトでは、これは'%Y'
です。
- year
オプション文字列としての年の値。 デフォルトでは、
None
に設定されています。これは、年が他の手段を使用して決定されることを意味します。
- get_year_format()
年を解析するときに使用する
strftime()
形式を返します。 デフォルトで year_format を返します。
- get_year()
このビューがデータを表示する年を文字列として返します。 次のソースを順番に試します。
YearMixin.year 属性の値。
URLパターンでキャプチャされた
year
引数の値。year
GET
クエリ引数の値。
有効な年の指定が見つからない場合は404を上げます。
- get_next_year(date)
指定された日付の後の年の最初の日を含む日付オブジェクトを返します。 この関数は、 allow_empty および allow_future の値に応じて、
None
を返すか、 Http404 例外を発生させることもできます。
- get_previous_year(date)
指定された日付の前の年の最初の日を含む日付オブジェクトを返します。 この関数は、 allow_empty および allow_future の値に応じて、
None
を返すか、 Http404 例外を発生させることもできます。
MonthMixin
- class MonthMixin
日付の月コンポーネントの解析情報を取得して提供するために使用できるミックスイン。
メソッドと属性
- month_format
月を解析するときに使用する
strftime()
形式。 デフォルトでは、これは'%b'
です。
- month
オプション文字列としての月の値。 デフォルトでは、
None
に設定されています。これは、月が他の手段を使用して決定されることを意味します。
- get_month_format()
月を解析するときに使用する
strftime()
形式を返します。 デフォルトで month_format を返します。
- get_month()
このビューがデータを表示する月を文字列として返します。 次のソースを順番に試します。
MonthMixin.month 属性の値。
URLパターンでキャプチャされた
month
引数の値。month
GET
クエリ引数の値。
有効な月の指定が見つからない場合は404を上げます。
- get_next_month(date)
指定された日付の翌月の最初の日を含む日付オブジェクトを返します。 この関数は、 allow_empty および allow_future の値に応じて、
None
を返すか、 Http404 例外を発生させることもできます。
- get_previous_month(date)
指定された日付の前の月の最初の日を含む日付オブジェクトを返します。 この関数は、 allow_empty および allow_future の値に応じて、
None
を返すか、 Http404 例外を発生させることもできます。
DayMixin
- class DayMixin
日付の日コンポーネントの解析情報を取得して提供するために使用できるミックスイン。
メソッドと属性
- day_format
日を解析するときに使用する
strftime()
形式。 デフォルトでは、これは'%d'
です。
- day
オプション文字列としてのその日の値。 デフォルトでは、
None
に設定されています。これは、他の方法を使用して日が決定されることを意味します。
- get_day_format()
日を解析するときに使用する
strftime()
形式を返します。 デフォルトで day_format を返します。
- get_day()
このビューがデータを表示する日を文字列として返します。 次のソースを順番に試します。
DayMixin.day 属性の値。
URLパターンでキャプチャされた
day
引数の値。day
GET
クエリ引数の値。
有効な日の指定が見つからない場合は、404を上げます。
- get_next_day(date)
指定された日付の次の有効な日を含む日付オブジェクトを返します。 この関数は、 allow_empty および allow_future の値に応じて、
None
を返すか、 Http404 例外を発生させることもできます。
- get_previous_day(date)
前の有効な日を含む日付オブジェクトを返します。 この関数は、 allow_empty および allow_future の値に応じて、
None
を返すか、 Http404 例外を発生させることもできます。
WeekMixin
- class WeekMixin
日付の週コンポーネントの解析情報を取得して提供するために使用できるミックスイン。
メソッドと属性
- week_format
週を解析するときに使用する
strftime()
形式。 デフォルトでは、これは'%U'
です。これは、週が日曜日に始まることを意味します。 週が月曜日に始まる場合は、'%W'
または'%V'
(ISO 8601週)に設定します。バージョン3.2の新機能:
'%V'
週形式のサポートが追加されました。
- week
オプション文字列としての週の値。 デフォルトでは、
None
に設定されています。これは、週が他の手段を使用して決定されることを意味します。
- get_week_format()
週を解析するときに使用する
strftime()
形式を返します。 デフォルトで week_format を返します。
- get_week()
このビューがデータを表示する週を文字列として返します。 次のソースを順番に試します。
WeekMixin.week 属性の値。
URLパターンでキャプチャされた
week
引数の値week
GET
クエリ引数の値。
有効な週の指定が見つからない場合は404を上げます。
- get_next_week(date)
指定された日付の後の週の最初の曜日を含む日付オブジェクトを返します。 この関数は、 allow_empty および allow_future の値に応じて、
None
を返すか、 Http404 例外を発生させることもできます。
- get_prev_week(date)
指定された日付の前の週の最初の日を含む日付オブジェクトを返します。 この関数は、 allow_empty および allow_future の値に応じて、
None
を返すか、 Http404 例外を発生させることもできます。
DateMixin
- class DateMixin
すべての日付ベースのビューに共通の動作を提供するミックスインクラス。
メソッドと属性
- date_field
QuerySet
のモデル内のDateField
またはDateTimeField
の名前。これは、日付ベースのアーカイブがページに表示するオブジェクトのリストを決定するために使用する必要があります。タイムゾーンサポートが有効で、
date_field
がDateTimeField
の場合、日付は現在のタイムゾーンにあると見なされます。 それ以外の場合、クエリセットには、エンドユーザーのタイムゾーンの前日または翌日のオブジェクトが含まれる可能性があります。警告
この状況で、ユーザーごとのタイムゾーン選択を実装している場合、エンドユーザーのタイムゾーンに応じて、同じURLに異なるオブジェクトのセットが表示される場合があります。 これを回避するには、
date_field
属性としてDateField
を使用する必要があります。
- allow_future
このページに「future」オブジェクトを含めるかどうかを指定するブール値。「future」は、
date_field
で指定されたフィールドが現在の日付/時刻よりも大きいオブジェクトを意味します。 デフォルトでは、これはFalse
です。
- get_date_field()
このビューが操作される日付データを含むフィールドの名前を返します。 デフォルトで date_field を返します。
- get_allow_future()
このページに「future」オブジェクトを含めるかどうかを決定します。「future」は、
date_field
で指定されたフィールドが現在の日付/時刻よりも大きいオブジェクトを意味します。 デフォルトで allow_future を返します。
BaseDateListView
- class BaseDateListView
すべての日付ベースのビューに共通の動作を提供する基本クラス。 通常、 BaseDateListView をインスタンス化する理由はありません。 代わりに、サブクラスの1つをインスタンス化します。
このビュー(およびそのサブクラス)の実行中、
self.object_list
にはビューが操作しているオブジェクトのリストが含まれ、self.date_list
にはデータが利用可能な日付のリストが含まれます。Mixins
メソッドと属性
- allow_empty
使用可能なオブジェクトがない場合にページを表示するかどうかを指定するブール値。 これが
True
であり、使用可能なオブジェクトがない場合、ビューは404を上げる代わりに空のページを表示します。これは、デフォルト値である
False
を除いて、 django.views.generic.list.MultipleObjectMixin.allow_empty と同じです。
- date_list_period
オプション
date_list
の集計期間を定義する文字列。'year'
(デフォルト)、'month'
、または'day'
のいずれかである必要があります。
- get_dated_items()
(
date_list
、object_list
、extra_context
)を含む3タプルを返します。date_list
は、データが利用可能な日付のリストです。object_list
はオブジェクトのリストです。extra_context
は、 MultipleObjectMixin によって提供されるコンテキストデータに追加されるコンテキストデータの辞書です。
- get_dated_queryset(**lookup)
lookup
で定義されたクエリ引数を使用してフィルタリングされたクエリセットを返します。allow_empty
やallow_future
など、クエリセットに制限を適用します。
- get_date_list_period()
date_list
の集計期間を返します。 デフォルトで date_list_period を返します。
- get_date_list(queryset, date_type=None, ordering='ASC')
queryset
にエントリが含まれているタイプdate_type
の日付のリストを返します。 たとえば、get_date_list(qs, 'year')
は、qs
にエントリがある年のリストを返します。date_type
が指定されていない場合、 get_date_list_period()の結果が使用されます。date_type
とordering
は QuerySet.dates()に渡されます。