注
这些mixin中的所有日期格式属性都使用strftime()
格式字符。 不要尝试使用now
模板标记中的格式字符,因为它们不兼容。
YearMixin
¶YearMixin
[source]¶可用于检索和提供日期的年份组件的解析信息的mixin。
方法和属性
year_format
¶解析年份时使用的strftime()
格式。
默认情况下,这是'%Y'
。
year
¶可选年的值,为字符串。 默认情况下,设置为None
,这意味着年份将使用其他方式确定。
get_year_format
()[source]¶返回解析年份时要使用的strftime()
格式。 默认返回year_format
。
get_year
()[source]¶返回此视图将以字符串形式显示数据的年份。 尝试以下来源,按顺序:
YearMixin.year
属性的值。year
参数的值。GET
year
查询参数的值。如果找不到有效的年份规格,则提高404。
get_next_year
(date)[source]¶返回包含提供日期后一年中第一天的日期对象。 此函数还可以返回None
或引发Http404
异常,具体取决于allow_empty
和allow_future
的值。
get_previous_year
(date)[source]¶返回包含所提供日期前一年中第一天的日期对象。 此函数还可以返回None
或引发Http404
异常,具体取决于allow_empty
和allow_future
的值。
MonthMixin
¶MonthMixin
[source]¶可用于检索和提供日期的月份组件的解析信息的mixin。
方法和属性
month_format
¶解析月份时使用的strftime()
格式。 默认情况下,这是'%b'
。
month
¶可选月的值,为字符串。 默认情况下,设置为None
,这意味着将使用其他方式确定月份。
get_month_format
()[source]¶返回解析月份时要使用的strftime()
格式。 默认返回month_format
。
get_month
()[source]¶返回此视图将以字符串形式显示数据的月份。 尝试以下来源,按顺序:
MonthMixin.month
属性的值。month
参数的值。GET
month
查询参数的值。如果找不到有效的月份规格,则提高404。
get_next_month
(date)[source]¶返回包含提供日期后的月份中第一天的日期对象。 此函数还可以返回None
或引发Http404
异常,具体取决于allow_empty
和allow_future
的值。
get_previous_month
(date)[source]¶返回包含所提供日期前一个月的第一天的日期对象。 此函数还可以返回None
或引发Http404
异常,具体取决于allow_empty
和allow_future
的值。
DayMixin
¶DayMixin
[source]¶可用于检索和提供日期的日期组件的解析信息的mixin。
方法和属性
day_format
¶解析日期时使用的strftime()
格式。 默认情况下,这是'%d'
。
day
¶可选日期的值,为字符串。 默认情况下,设置为None
,这意味着将使用其他方式确定日期。
get_day_format
()[source]¶返回解析日期时要使用的strftime()
格式。
默认返回day_format
。
get_day
()[source]¶返回此视图将以字符串形式显示数据的日期。 尝试以下来源,按顺序:
DayMixin.day
属性的值。day
参数的值。GET
day
查询参数的值。如果没有找到有效的天数规格,则提高404。
get_next_day
(date)[source]¶返回包含提供日期后的下一个有效天的日期对象。 此函数还可以返回None
或引发Http404
异常,具体取决于allow_empty
和allow_future
的值。
get_previous_day
(date)[source]¶返回包含上一个有效日的对象。 此函数还可以返回None
或引发Http404
异常,具体取决于allow_empty
和allow_future
的值。
WeekMixin
¶WeekMixin
[source]¶可用于检索和提供日期的周组件的解析信息的mixin。
方法和属性
week_format
¶解析星期时使用的strftime()
格式。 默认情况下,这是'%U'
,这意味着星期从星期日开始。 如果您的星期从星期一开始,请将其设置为'%W'
。
week
¶可选星期的值,为字符串。 默认情况下,设置为None
,这意味着使用其他方式确定星期。
get_week_format
()[source]¶返回解析星期时要使用的strftime()
格式。 默认返回week_format
。
get_week
()[source]¶返回此视图将以字符串形式显示数据的星期。 尝试以下来源,按顺序:
WeekMixin.week
的值。week
参数的值GET
week
查询参数的值。如果没有找到有效的星期规格,则提高404。
get_next_week
(date)[source]¶返回包含所提供日期后一周中第一天的日期对象。 此函数还可以返回None
或引发Http404
异常,具体取决于allow_empty
和allow_future
的值。
get_prev_week
(date)¶返回包含提供日期前一周的第一天的日期对象。 此函数还可以返回None
或引发Http404
异常,具体取决于allow_empty
和allow_future
的值。
DateMixin
¶DateMixin
[source]¶一个mixin类,为所有基于日期的视图提供公共行为。
方法和属性
date_field
¶DateField
的模型中的DateTimeField
或QuerySet
的名称,基于日期的归档应该使用它来确定要显示的对象列表在页面上。
当启用time zone support且date_field
为DateTimeField
时,假定日期位于当前时区。 否则,查询集可以包括来自最终用户的时区中的前一天或次日的对象。
警告
在这种情况下,如果您已实施每用户时区选择,则相同的URL可能会显示不同的对象集,具体取决于最终用户的时区。 为避免这种情况,应使用date_field
作为DateField
属性。
allow_future
¶指定是否在此网页上包含“未来”对象的布尔值,其中“未来”表示date_field
中指定的字段大于当前日期/时间的对象。 默认情况下,这是False
。
get_date_field
()[source]¶返回包含此视图将操作的日期数据的字段的名称。 默认情况下返回date_field
。
get_allow_future
()[source]¶确定在此网页上是否包含“未来”对象,其中“未来”表示date_field
中指定的字段大于当前日期/时间的对象。 默认返回allow_future
。
BaseDateListView
¶BaseDateListView
[source]¶为所有基于日期的视图提供常见行为的基类。 通常不会有一个原因来实例化BaseDateListView
;实例化一个子类。
当此视图(及其子类)正在执行时,self.date_list
将包含视图正在操作的对象列表,self.object_list
将包含数据可用的日期。
混入
方法和属性
allow_empty
¶一个布尔值,指定如果没有对象可用,是否显示页面。 如果这是True
,且没有可用的对象,该视图将显示一个空页面,而不是提高404。
这与django.views.generic.list.MultipleObjectMixin.allow_empty
相同,但缺省值为False
。
date_list_period
¶可选定义date_list
的聚合时间段的字符串。 它必须是'year'
(默认值),'month'
或'day'
之一。
get_dated_items
()[source]¶返回包含(date_list
,object_list
,extra_context
)的3元组。
date_list
是数据可用的日期列表。
object_list
是对象的列表。 extra_context
是将被添加到由MultipleObjectMixin
提供的任何上下文数据的上下文数据的字典。
get_dated_queryset
(**lookup)[source]¶返回查询集,使用由lookup
定义的查询参数进行过滤。 强制执行对查询集的任何限制,例如allow_future
和allow_empty
。
get_date_list_period
()[source]¶返回date_list
的聚合周期。 默认情况下返回date_list_period
。
get_date_list
(queryset, date_type=None, ordering='ASC')[source]¶返回queryset
包含条目的date_type
类型的日期列表。 例如,get_date_list(qs, 'year')
将返回qs
。 如果未提供date_type
,则使用get_date_list_period()
的结果。 date_type
和ordering
只是传递到QuerySet.dates()
。
2017年9月6日