{"title":"基于日期的混入","version":"5.2","locale":"zh-hans","docname":"ref/class-based-views/mixins-date-based","url":"/zh-hans/5.2/ref/class-based-views/mixins-date-based/","canonical":"https://djangodocs.dev/zh-hans/5.2/ref/class-based-views/mixins-date-based/","summary":"一个可用于检索和提供日期的年份成分解析信息的混入。strftime() 格式，解析年份时使用。默认情况下，是 '%Y'。可选的年数值，为字符串。","html":"<h1>基于日期的混入<a class=\"heading-anchor\" href=\"#date-based-mixins\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<aside class=\"admonition admonition-note\" role=\"note\">\n<p class=\"admonition-title\">Note</p>\n<p>这些混入中的所有日期格式化属性都使用 <a class=\"reference external\" href=\"https://docs.python.org/3/library/time.html#time.strftime\" title=\"(in Python v3.14)\"><code class=\"xref py py-func docutils literal notranslate\">strftime()</code></a> 格式字符，请不要尝试使用 <a class=\"reference internal\" href=\"/zh-hans/5.2/ref/templates/builtins/#std-templatetag-now\"><code class=\"xref std std-ttag docutils literal notranslate\">now</code></a> 模板标签的格式字符，因为它们不兼容。</p>\n</aside>\n<section id=\"yearmixin\">\n<h2><code class=\"docutils literal notranslate\">YearMixin</code><a class=\"heading-anchor\" href=\"#yearmixin\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.YearMixin\">\n<em class=\"property\"><span class=\"k\">class</span> </em><span class=\"sig-name descname\">YearMixin</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.YearMixin\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>一个可用于检索和提供日期的年份成分解析信息的混入。</p>\n<p><strong>方法和属性</strong></p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.YearMixin.year_format\">\n<span class=\"sig-name descname\">year_format</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.YearMixin.year_format\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p><a class=\"reference external\" href=\"https://docs.python.org/3/library/time.html#time.strftime\" title=\"(in Python v3.14)\"><code class=\"xref py py-func docutils literal notranslate\">strftime()</code></a> 格式，解析年份时使用。默认情况下，是 <code class=\"docutils literal notranslate\">'%Y'</code>。</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.YearMixin.year\">\n<span class=\"sig-name descname\">year</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.YearMixin.year\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p><strong>可选的</strong> 年数值，为字符串。默认情况下，设置为 <code class=\"docutils literal notranslate\">None</code>，这意味着年份将通过其他方式确定。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.YearMixin.get_year_format\">\n<span class=\"sig-name descname\">get_year_format</span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.YearMixin.get_year_format\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>返回 <a class=\"reference external\" href=\"https://docs.python.org/3/library/time.html#time.strftime\" title=\"(in Python v3.14)\"><code class=\"xref py py-func docutils literal notranslate\">strftime()</code></a> 在解析年份时使用的格式。默认返回 <a class=\"reference internal\" href=\"#django.views.generic.dates.YearMixin.year_format\" title=\"django.views.generic.dates.YearMixin.year_format\"><code class=\"xref py py-attr docutils literal notranslate\">year_format</code></a>。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.YearMixin.get_year\">\n<span class=\"sig-name descname\">get_year</span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.YearMixin.get_year\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>返回此视图将显示数据的年份，为一个字符串。按顺序尝试以下来源：</p>\n<ul class=\"simple\">\n<li><p><a class=\"reference internal\" href=\"#django.views.generic.dates.YearMixin.year\" title=\"django.views.generic.dates.YearMixin.year\"><code class=\"xref py py-attr docutils literal notranslate\">YearMixin.year</code></a> 属性的值。</p></li>\n<li><p>URL 模式中捕获的 <code class=\"docutils literal notranslate\">year</code> 参数值。</p></li>\n<li><p><code class=\"docutils literal notranslate\">GET</code> 查询  <code class=\"docutils literal notranslate\">year</code> 参数的值。</p></li>\n</ul>\n<p>如果找不到有效的年份规格，则引发 404。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.YearMixin.get_next_year\">\n<span class=\"sig-name descname\">get_next_year</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">date</em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.YearMixin.get_next_year\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>返回一个日期对象，包含提供的日期后的第一年的第一天。根据 <a class=\"reference internal\" href=\"#django.views.generic.dates.BaseDateListView.allow_empty\" title=\"django.views.generic.dates.BaseDateListView.allow_empty\"><code class=\"xref py py-attr docutils literal notranslate\">allow_empty</code></a> 和 <a class=\"reference internal\" href=\"#django.views.generic.dates.DateMixin.allow_future\" title=\"django.views.generic.dates.DateMixin.allow_future\"><code class=\"xref py py-attr docutils literal notranslate\">allow_future</code></a> 的值，该函数也可以返回 <code class=\"docutils literal notranslate\">None</code> 或引发 <a class=\"reference internal\" href=\"/zh-hans/5.2/topics/http/views/#django.http.Http404\" title=\"django.http.Http404\"><code class=\"xref py py-class docutils literal notranslate\">Http404</code></a> 异常。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.YearMixin.get_previous_year\">\n<span class=\"sig-name descname\">get_previous_year</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">date</em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.YearMixin.get_previous_year\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>返回一个日期对象，包含所提供日期前一年的第一天。根据 <a class=\"reference internal\" href=\"#django.views.generic.dates.BaseDateListView.allow_empty\" title=\"django.views.generic.dates.BaseDateListView.allow_empty\"><code class=\"xref py py-attr docutils literal notranslate\">allow_empty</code></a> 和 <a class=\"reference internal\" href=\"#django.views.generic.dates.DateMixin.allow_future\" title=\"django.views.generic.dates.DateMixin.allow_future\"><code class=\"xref py py-attr docutils literal notranslate\">allow_future</code></a> 的值，该函数也可以返回 <code class=\"docutils literal notranslate\">None</code> 或引发 <a class=\"reference internal\" href=\"/zh-hans/5.2/topics/http/views/#django.http.Http404\" title=\"django.http.Http404\"><code class=\"xref py py-class docutils literal notranslate\">Http404</code></a> 异常。</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"monthmixin\">\n<h2><code class=\"docutils literal notranslate\">MonthMixin</code><a class=\"heading-anchor\" href=\"#monthmixin\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.MonthMixin\">\n<em class=\"property\"><span class=\"k\">class</span> </em><span class=\"sig-name descname\">MonthMixin</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.MonthMixin\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>一个可用于检索并提供日期中月份成分的解析信息的混入。</p>\n<p><strong>方法和属性</strong></p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.MonthMixin.month_format\">\n<span class=\"sig-name descname\">month_format</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.MonthMixin.month_format\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p><a class=\"reference external\" href=\"https://docs.python.org/3/library/time.html#time.strftime\" title=\"(in Python v3.14)\"><code class=\"xref py py-func docutils literal notranslate\">strftime()</code></a> 格式在解析月份时使用。默认情况下，是 <code class=\"docutils literal notranslate\">'%b'</code>。</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.MonthMixin.month\">\n<span class=\"sig-name descname\">month</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.MonthMixin.month\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p><strong>可选的</strong> 月份数值，为字符串。默认情况下，设置为 <code class=\"docutils literal notranslate\">None</code>，这意味着月份将通过其他方式确定。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.MonthMixin.get_month_format\">\n<span class=\"sig-name descname\">get_month_format</span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.MonthMixin.get_month_format\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>返回 <a class=\"reference external\" href=\"https://docs.python.org/3/library/time.html#time.strftime\" title=\"(in Python v3.14)\"><code class=\"xref py py-func docutils literal notranslate\">strftime()</code></a> 在解析月份时使用的格式。默认返回 <a class=\"reference internal\" href=\"#django.views.generic.dates.MonthMixin.month_format\" title=\"django.views.generic.dates.MonthMixin.month_format\"><code class=\"xref py py-attr docutils literal notranslate\">month_format</code></a>。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.MonthMixin.get_month\">\n<span class=\"sig-name descname\">get_month</span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.MonthMixin.get_month\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>以字符串形式返回此视图将显示数据的月份。 按顺序尝试以下来源：</p>\n<ul class=\"simple\">\n<li><p><a class=\"reference internal\" href=\"#django.views.generic.dates.MonthMixin.month\" title=\"django.views.generic.dates.MonthMixin.month\"><code class=\"xref py py-attr docutils literal notranslate\">MonthMixin.month</code></a> 属性的值。</p></li>\n<li><p>URL 模式中捕获的 <code class=\"docutils literal notranslate\">month</code> 参数值。</p></li>\n<li><p><code class=\"docutils literal notranslate\">GET</code> 查询  <code class=\"docutils literal notranslate\">month</code> 参数的值。</p></li>\n</ul>\n<p>如果找不到有效的月份规格，则引发 404。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.MonthMixin.get_next_month\">\n<span class=\"sig-name descname\">get_next_month</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">date</em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.MonthMixin.get_next_month\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>返回一个日期对象，包含提供的日期后的第一个月的第一天。根据 <a class=\"reference internal\" href=\"#django.views.generic.dates.BaseDateListView.allow_empty\" title=\"django.views.generic.dates.BaseDateListView.allow_empty\"><code class=\"xref py py-attr docutils literal notranslate\">allow_empty</code></a> 和 <a class=\"reference internal\" href=\"#django.views.generic.dates.DateMixin.allow_future\" title=\"django.views.generic.dates.DateMixin.allow_future\"><code class=\"xref py py-attr docutils literal notranslate\">allow_future</code></a> 的值，该函数也可以返回 <code class=\"docutils literal notranslate\">None</code> 或引发 <a class=\"reference internal\" href=\"/zh-hans/5.2/topics/http/views/#django.http.Http404\" title=\"django.http.Http404\"><code class=\"xref py py-class docutils literal notranslate\">Http404</code></a> 异常。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.MonthMixin.get_previous_month\">\n<span class=\"sig-name descname\">get_previous_month</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">date</em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.MonthMixin.get_previous_month\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>返回一个日期对象，包含所提供日期前一个月的第一天。根据 <a class=\"reference internal\" href=\"#django.views.generic.dates.BaseDateListView.allow_empty\" title=\"django.views.generic.dates.BaseDateListView.allow_empty\"><code class=\"xref py py-attr docutils literal notranslate\">allow_empty</code></a> 和 <a class=\"reference internal\" href=\"#django.views.generic.dates.DateMixin.allow_future\" title=\"django.views.generic.dates.DateMixin.allow_future\"><code class=\"xref py py-attr docutils literal notranslate\">allow_future</code></a> 的值，该函数也可以返回 <code class=\"docutils literal notranslate\">None</code> 或引发 <a class=\"reference internal\" href=\"/zh-hans/5.2/topics/http/views/#django.http.Http404\" title=\"django.http.Http404\"><code class=\"xref py py-class docutils literal notranslate\">Http404</code></a> 异常。</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"daymixin\">\n<h2><code class=\"docutils literal notranslate\">DayMixin</code><a class=\"heading-anchor\" href=\"#daymixin\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.DayMixin\">\n<em class=\"property\"><span class=\"k\">class</span> </em><span class=\"sig-name descname\">DayMixin</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.DayMixin\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>一个可用于检索并提供日期中的日期成分的解析信息的混入。</p>\n<p><strong>方法和属性</strong></p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.DayMixin.day_format\">\n<span class=\"sig-name descname\">day_format</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.DayMixin.day_format\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p><a class=\"reference external\" href=\"https://docs.python.org/3/library/time.html#time.strftime\" title=\"(in Python v3.14)\"><code class=\"xref py py-func docutils literal notranslate\">strftime()</code></a> 格式，在解析日期时使用。默认情况下，是 <code class=\"docutils literal notranslate\">'%d'</code>。</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.DayMixin.day\">\n<span class=\"sig-name descname\">day</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.DayMixin.day\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p><strong>可选的</strong> 日期的数值，为字符串。默认情况下，设置为 <code class=\"docutils literal notranslate\">None</code>，这意味着将使用其他方式确定日期。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.DayMixin.get_day_format\">\n<span class=\"sig-name descname\">get_day_format</span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.DayMixin.get_day_format\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>返回 <a class=\"reference external\" href=\"https://docs.python.org/3/library/time.html#time.strftime\" title=\"(in Python v3.14)\"><code class=\"xref py py-func docutils literal notranslate\">strftime()</code></a> 格式，用于解析当天的情况。默认返回 <a class=\"reference internal\" href=\"#django.views.generic.dates.DayMixin.day_format\" title=\"django.views.generic.dates.DayMixin.day_format\"><code class=\"xref py py-attr docutils literal notranslate\">day_format</code></a>。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.DayMixin.get_day\">\n<span class=\"sig-name descname\">get_day</span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.DayMixin.get_day\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>返回此视图将显示数据的日期，为一个字符串。按顺序尝试以下来源：</p>\n<ul class=\"simple\">\n<li><p><a class=\"reference internal\" href=\"#django.views.generic.dates.DayMixin.day\" title=\"django.views.generic.dates.DayMixin.day\"><code class=\"xref py py-attr docutils literal notranslate\">DayMixin.day</code></a> 属性的值。</p></li>\n<li><p>URL 模式中捕获的 <code class=\"docutils literal notranslate\">day</code> 参数值。</p></li>\n<li><p><code class=\"docutils literal notranslate\">GET</code> 查询  <code class=\"docutils literal notranslate\">day</code> 参数的值。</p></li>\n</ul>\n<p>如果找不到有效的日期规格，则引发 404。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.DayMixin.get_next_day\">\n<span class=\"sig-name descname\">get_next_day</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">date</em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.DayMixin.get_next_day\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>返回一个日期对象，包含提供的日期后的下一个有效日期。根据 <a class=\"reference internal\" href=\"#django.views.generic.dates.BaseDateListView.allow_empty\" title=\"django.views.generic.dates.BaseDateListView.allow_empty\"><code class=\"xref py py-attr docutils literal notranslate\">allow_empty</code></a> 和 <a class=\"reference internal\" href=\"#django.views.generic.dates.DateMixin.allow_future\" title=\"django.views.generic.dates.DateMixin.allow_future\"><code class=\"xref py py-attr docutils literal notranslate\">allow_future</code></a> 的值，该函数也可以返回 <code class=\"docutils literal notranslate\">None</code> 或引发 <a class=\"reference internal\" href=\"/zh-hans/5.2/topics/http/views/#django.http.Http404\" title=\"django.http.Http404\"><code class=\"xref py py-class docutils literal notranslate\">Http404</code></a> 异常。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.DayMixin.get_previous_day\">\n<span class=\"sig-name descname\">get_previous_day</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">date</em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.DayMixin.get_previous_day\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>返回一个包含前一天有效日期的日期对象。根据 <a class=\"reference internal\" href=\"#django.views.generic.dates.BaseDateListView.allow_empty\" title=\"django.views.generic.dates.BaseDateListView.allow_empty\"><code class=\"xref py py-attr docutils literal notranslate\">allow_empty</code></a> 和 <a class=\"reference internal\" href=\"#django.views.generic.dates.DateMixin.allow_future\" title=\"django.views.generic.dates.DateMixin.allow_future\"><code class=\"xref py py-attr docutils literal notranslate\">allow_future</code></a> 的值，该函数也可以返回 <code class=\"docutils literal notranslate\">None</code> 或引发 <a class=\"reference internal\" href=\"/zh-hans/5.2/topics/http/views/#django.http.Http404\" title=\"django.http.Http404\"><code class=\"xref py py-class docutils literal notranslate\">Http404</code></a> 异常。</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"weekmixin\">\n<h2><code class=\"docutils literal notranslate\">WeekMixin</code><a class=\"heading-anchor\" href=\"#weekmixin\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.WeekMixin\">\n<em class=\"property\"><span class=\"k\">class</span> </em><span class=\"sig-name descname\">WeekMixin</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.WeekMixin\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>一个可用于检索和提供日期的周成分的解析信息的混入。</p>\n<p><strong>方法和属性</strong></p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.WeekMixin.week_format\">\n<span class=\"sig-name descname\">week_format</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.WeekMixin.week_format\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p><a class=\"reference external\" href=\"https://docs.python.org/3/library/time.html#time.strftime\" title=\"(in Python v3.14)\"><code class=\"xref py py-func docutils literal notranslate\">strftime()</code></a> 格式，解析一周时使用。默认情况下，它是 <code class=\"docutils literal notranslate\">'%U'</code>，这意味着一周从周日开始。如果你的星期从周一开始，则设置为 <code class=\"docutils literal notranslate\">'%W'``或 ``'%V'</code> （ISO 8601 星期）。</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.WeekMixin.week\">\n<span class=\"sig-name descname\">week</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.WeekMixin.week\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p><strong>可选的</strong> 周数值，为字符串。默认情况下，设置为 <code class=\"docutils literal notranslate\">None</code>，这意味着将使用其他方式确定星期。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.WeekMixin.get_week_format\">\n<span class=\"sig-name descname\">get_week_format</span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.WeekMixin.get_week_format\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>返回 <a class=\"reference external\" href=\"https://docs.python.org/3/library/time.html#time.strftime\" title=\"(in Python v3.14)\"><code class=\"xref py py-func docutils literal notranslate\">strftime()</code></a> 在解析星期时要使用的格式。默认返回 <a class=\"reference internal\" href=\"#django.views.generic.dates.WeekMixin.week_format\" title=\"django.views.generic.dates.WeekMixin.week_format\"><code class=\"xref py py-attr docutils literal notranslate\">week_format</code></a>。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.WeekMixin.get_week\">\n<span class=\"sig-name descname\">get_week</span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.WeekMixin.get_week\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>返回此视图将显示数据的星期，为字符串。按顺序尝试以下来源：</p>\n<ul class=\"simple\">\n<li><p><a class=\"reference internal\" href=\"#django.views.generic.dates.WeekMixin.week\" title=\"django.views.generic.dates.WeekMixin.week\"><code class=\"xref py py-attr docutils literal notranslate\">WeekMixin.week</code></a> 属性的值。</p></li>\n<li><p>URL 模式中捕获的 <code class=\"docutils literal notranslate\">week</code> 参数值。</p></li>\n<li><p><code class=\"docutils literal notranslate\">GET</code> 查询 <code class=\"docutils literal notranslate\">week</code> 参数的值。</p></li>\n</ul>\n<p>如果找不到有效的周数规格，则引发 404。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.WeekMixin.get_next_week\">\n<span class=\"sig-name descname\">get_next_week</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">date</em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.WeekMixin.get_next_week\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>返回一个日期对象，包含提供的日期后的一周第一天。根据 <a class=\"reference internal\" href=\"#django.views.generic.dates.BaseDateListView.allow_empty\" title=\"django.views.generic.dates.BaseDateListView.allow_empty\"><code class=\"xref py py-attr docutils literal notranslate\">allow_empty</code></a> 和 <a class=\"reference internal\" href=\"#django.views.generic.dates.DateMixin.allow_future\" title=\"django.views.generic.dates.DateMixin.allow_future\"><code class=\"xref py py-attr docutils literal notranslate\">allow_future</code></a> 的值，该函数也可以返回 <code class=\"docutils literal notranslate\">None</code> 或引发 <a class=\"reference internal\" href=\"/zh-hans/5.2/topics/http/views/#django.http.Http404\" title=\"django.http.Http404\"><code class=\"xref py py-class docutils literal notranslate\">Http404</code></a> 异常。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.WeekMixin.get_prev_week\">\n<span class=\"sig-name descname\">get_prev_week</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">date</em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.WeekMixin.get_prev_week\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>返回一个日期对象，包含提供的日期前一周的第一天。根据 <a class=\"reference internal\" href=\"#django.views.generic.dates.BaseDateListView.allow_empty\" title=\"django.views.generic.dates.BaseDateListView.allow_empty\"><code class=\"xref py py-attr docutils literal notranslate\">allow_empty</code></a> 和 <a class=\"reference internal\" href=\"#django.views.generic.dates.DateMixin.allow_future\" title=\"django.views.generic.dates.DateMixin.allow_future\"><code class=\"xref py py-attr docutils literal notranslate\">allow_future</code></a> 的值，该函数也可以返回 <code class=\"docutils literal notranslate\">None</code> 或引发 <a class=\"reference internal\" href=\"/zh-hans/5.2/topics/http/views/#django.http.Http404\" title=\"django.http.Http404\"><code class=\"xref py py-class docutils literal notranslate\">Http404</code></a> 异常。</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"datemixin\">\n<h2><code class=\"docutils literal notranslate\">DateMixin</code><a class=\"heading-anchor\" href=\"#datemixin\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.DateMixin\">\n<em class=\"property\"><span class=\"k\">class</span> </em><span class=\"sig-name descname\">DateMixin</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.DateMixin\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>一个混入类，为所有基于日期的视图提供通用行为。</p>\n<p><strong>方法和属性</strong></p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.DateMixin.date_field\">\n<span class=\"sig-name descname\">date_field</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.DateMixin.date_field\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p><code class=\"docutils literal notranslate\">QuerySet</code> 模型中 <code class=\"docutils literal notranslate\">DateField</code> 或 <code class=\"docutils literal notranslate\">DateTimeField</code> 的名称，基于日期的档案应使用该名称来确定页面上显示的对象列表。</p>\n<p>当 <a class=\"reference internal\" href=\"/zh-hans/5.2/topics/i18n/timezones/\"><span class=\"doc\">时区支持</span></a> 被启用，并且 <code class=\"docutils literal notranslate\">date_field</code> 是 <code class=\"docutils literal notranslate\">DateTimeField</code> 时，日期被认为是在当前时区。否则，查询集可以包括最终用户时区的前一天或第二天的对象。</p>\n<aside class=\"admonition admonition-warning\" role=\"note\">\n<p class=\"admonition-title\">Warning</p>\n<p>在这种情况下，如果你已经实现了每个用户的时区选择，那么根据最终用户的时区，同一个 URL 可能会显示一组不同的对象。为了避免这种情况，你应该使用一个 <code class=\"docutils literal notranslate\">DateField</code> 作为 <code class=\"docutils literal notranslate\">date_field</code> 属性。</p>\n</aside>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.DateMixin.allow_future\">\n<span class=\"sig-name descname\">allow_future</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.DateMixin.allow_future\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>一个布尔值，用于指定是否将“未来”对象列入本页，其中“未来”是指 <code class=\"docutils literal notranslate\">date_field</code> 中指定的字段大于当前日期／时间的对象。默认情况下，这是 <code class=\"docutils literal notranslate\">False</code>。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.DateMixin.get_date_field\">\n<span class=\"sig-name descname\">get_date_field</span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.DateMixin.get_date_field\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>返回包含日期数据的字段名，该字段将在此视图上操作。默认返回 <a class=\"reference internal\" href=\"#django.views.generic.dates.DateMixin.date_field\" title=\"django.views.generic.dates.DateMixin.date_field\"><code class=\"xref py py-attr docutils literal notranslate\">date_field</code></a>。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.DateMixin.get_allow_future\">\n<span class=\"sig-name descname\">get_allow_future</span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.DateMixin.get_allow_future\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>确定是否将“未来”对象包含在本页中，“未来”是指在 <code class=\"docutils literal notranslate\">date_field</code> 中指定的字段大于当前日期/时间的对象。默认返回 <a class=\"reference internal\" href=\"#django.views.generic.dates.DateMixin.allow_future\" title=\"django.views.generic.dates.DateMixin.allow_future\"><code class=\"xref py py-attr docutils literal notranslate\">allow_future</code></a>。</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>\n<section id=\"basedatelistview\">\n<h2><code class=\"docutils literal notranslate\">BaseDateListView</code><a class=\"heading-anchor\" href=\"#basedatelistview\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.BaseDateListView\">\n<em class=\"property\"><span class=\"k\">class</span> </em><span class=\"sig-name descname\">BaseDateListView</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.BaseDateListView\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>一个为所有基于日期的视图提供通用行为的基类。通常没有理由实例化 <a class=\"reference internal\" href=\"#django.views.generic.dates.BaseDateListView\" title=\"django.views.generic.dates.BaseDateListView\"><code class=\"xref py py-class docutils literal notranslate\">BaseDateListView</code></a>; 实例化一个子类来代替。</p>\n<p>当这个视图（及其子类）执行时，<code class=\"docutils literal notranslate\">self.object_list</code> 将包含该视图正在操作的对象列表，<code class=\"docutils literal notranslate\">self.date_list</code> 将包含可用数据的日期列表。</p>\n<p><strong>混入</strong></p>\n<ul class=\"simple\">\n<li><p><a class=\"reference internal\" href=\"#django.views.generic.dates.DateMixin\" title=\"django.views.generic.dates.DateMixin\"><code class=\"xref py py-class docutils literal notranslate\">DateMixin</code></a></p></li>\n<li><p><a class=\"reference internal\" href=\"/zh-hans/5.2/ref/class-based-views/mixins-multiple-object/#django.views.generic.list.MultipleObjectMixin\" title=\"django.views.generic.list.MultipleObjectMixin\"><code class=\"xref py py-class docutils literal notranslate\">MultipleObjectMixin</code></a></p></li>\n</ul>\n<p><strong>方法和属性</strong></p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.BaseDateListView.allow_empty\">\n<span class=\"sig-name descname\">allow_empty</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.BaseDateListView.allow_empty\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>一个布尔值，用于指定是否在没有对象的情况下显示页面。如果这个值为 <code class=\"docutils literal notranslate\">True</code>，并且没有可用的对象，视图将显示一个空页面，而不是引发 404。</p>\n<p>这和 <a class=\"reference internal\" href=\"/zh-hans/5.2/ref/class-based-views/mixins-multiple-object/#django.views.generic.list.MultipleObjectMixin.allow_empty\" title=\"django.views.generic.list.MultipleObjectMixin.allow_empty\"><code class=\"xref py py-attr docutils literal notranslate\">django.views.generic.list.MultipleObjectMixin.allow_empty</code></a> 是一样的，只是默认值是 <code class=\"docutils literal notranslate\">False</code>。</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.BaseDateListView.date_list_period\">\n<span class=\"sig-name descname\">date_list_period</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.BaseDateListView.date_list_period\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p><strong>可选的</strong> 定义 <code class=\"docutils literal notranslate\">date_list</code> 的聚合周期的字符串。它必须是 <code class=\"docutils literal notranslate\">'year'</code> （默认）、<code class=\"docutils literal notranslate\">'month'</code> 或 <code class=\"docutils literal notranslate\">'day'</code> 之一。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.BaseDateListView.get_dated_items\">\n<span class=\"sig-name descname\">get_dated_items</span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.BaseDateListView.get_dated_items\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>返回一个包含 (<code class=\"docutils literal notranslate\">date_list</code>, <code class=\"docutils literal notranslate\">object_list</code>, <code class=\"docutils literal notranslate\">extra_context</code>) 的三元元组。</p>\n<p><code class=\"docutils literal notranslate\">date_list</code> 是可用数据的日期列表。<code class=\"docutils literal notranslate\">object_list</code> 是对象的列表。<code class=\"docutils literal notranslate\">extra_context</code> 是上下文数据的字典，它将被添加到由 <a class=\"reference internal\" href=\"/zh-hans/5.2/ref/class-based-views/mixins-multiple-object/#django.views.generic.list.MultipleObjectMixin\" title=\"django.views.generic.list.MultipleObjectMixin\"><code class=\"xref py py-class docutils literal notranslate\">MultipleObjectMixin</code></a> 提供的任何上下文数据中。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.BaseDateListView.get_dated_queryset\">\n<span class=\"sig-name descname\">get_dated_queryset</span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\">**</span>lookup</em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.BaseDateListView.get_dated_queryset\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>返回使用 <code class=\"docutils literal notranslate\">lookup</code> 定义的查询参数过滤的查询集。强制执行对查询集的任何限制，如 <code class=\"docutils literal notranslate\">allow_empty</code> 和 <code class=\"docutils literal notranslate\">allow_future</code>。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.BaseDateListView.get_date_list_period\">\n<span class=\"sig-name descname\">get_date_list_period</span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.BaseDateListView.get_date_list_period\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>返回 <code class=\"docutils literal notranslate\">date_list</code> 的聚合周期。默认返回 <a class=\"reference internal\" href=\"#django.views.generic.dates.BaseDateListView.date_list_period\" title=\"django.views.generic.dates.BaseDateListView.date_list_period\"><code class=\"xref py py-attr docutils literal notranslate\">date_list_period</code></a>。</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.dates.BaseDateListView.get_date_list\">\n<span class=\"sig-name descname\">get_date_list</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">queryset</em>, <em class=\"sig-param\">date_type<span class=\"o\">=</span><span class=\"default_value\">None</span></em>, <em class=\"sig-param\">ordering<span class=\"o\">=</span><span class=\"default_value\">'ASC'</span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.dates.BaseDateListView.get_date_list\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>返回 <code class=\"docutils literal notranslate\">date_type</code> 类型的日期列表，其中 <code class=\"docutils literal notranslate\">queryset</code> 包含条目。例如，<code class=\"docutils literal notranslate\">get_date_list(qs, 'year')</code> 将返回 <code class=\"docutils literal notranslate\">qs</code> 有条目的年份列表。如果没有提供 <code class=\"docutils literal notranslate\">date_type</code>，则使用 <a class=\"reference internal\" href=\"#django.views.generic.dates.BaseDateListView.get_date_list_period\" title=\"django.views.generic.dates.BaseDateListView.get_date_list_period\"><code class=\"xref py py-meth docutils literal notranslate\">get_date_list_period()</code></a> 的结果。<code class=\"docutils literal notranslate\">date_type</code> 和 <code class=\"docutils literal notranslate\">ordering</code> 被传递给 <a class=\"reference internal\" href=\"/zh-hans/5.2/ref/models/querysets/#django.db.models.query.QuerySet.dates\" title=\"django.db.models.query.QuerySet.dates\"><code class=\"xref py py-meth docutils literal notranslate\">QuerySet.dates()</code></a>。</p>\n</dd></dl>\n\n</dd></dl>\n\n</section>","rootId":"date-based-mixins","toc":[{"title":"YearMixin","anchor":"yearmixin","children":[]},{"title":"MonthMixin","anchor":"monthmixin","children":[]},{"title":"DayMixin","anchor":"daymixin","children":[]},{"title":"WeekMixin","anchor":"weekmixin","children":[]},{"title":"DateMixin","anchor":"datemixin","children":[]},{"title":"BaseDateListView","anchor":"basedatelistview","children":[]}],"breadcrumbs":[{"docname":"ref/index","title":"API 参考","url":"/zh-hans/5.2/ref/"},{"docname":"ref/class-based-views/index","title":"内置基于类的视图 API","url":"/zh-hans/5.2/ref/class-based-views/"},{"docname":"ref/class-based-views/mixins","title":"基于类的视图混入","url":"/zh-hans/5.2/ref/class-based-views/mixins/"}],"prev":{"docname":"ref/class-based-views/mixins-editing","title":"编辑混入","url":"/zh-hans/5.2/ref/class-based-views/mixins-editing/"},"next":{"docname":"ref/class-based-views/flattened-index","title":"基于类的通用视图——扁平化索引","url":"/zh-hans/5.2/ref/class-based-views/flattened-index/"},"formats":{"html":"/zh-hans/5.2/ref/class-based-views/mixins-date-based/","markdown":"/zh-hans/5.2/ref/class-based-views/mixins-date-based.md","json":"/zh-hans/5.2/ref/class-based-views/mixins-date-based.json"},"source":"https://github.com/django/django/blob/stable/5.2.x/docs/ref/class-based-views/mixins-date-based.txt","official":"https://docs.djangoproject.com/zh-hans/5.2/ref/class-based-views/mixins-date-based/","inVersions":["6.1","6.0","5.2","5.1","5.0","4.2","4.1","4.0","3.2","3.1","3.0","2.2","2.1","2.0"],"inLocales":["en","sv","zh-hans","ga","fr","ja","id","it","pt-br","ko","es","el","pl"]}