---
title: "Datumbaserade mixins"
version: 6.0
locale: sv
source: https://docs.djangoproject.com/sv/6.0/ref/class-based-views/mixins-date-based/
canonical: https://djangodocs.dev/sv/6.0/ref/class-based-views/mixins-date-based/
---
# Datumbaserade mixins

> **Note**
>
> Alla datumformateringsattribut i dessa mixins använder [`strftime()`](https://docs.python.org/3/library/time.html#time.strftime) formattecken. Försök inte använda formatkaraktärerna från [`now`](/sv/6.0/ref/templates/builtins/#std-templatetag-now) malltaggen eftersom de inte är kompatibla.

## `ÅrMixin`

#### `class YearMixin`

En mixin som kan användas för att hämta och tillhandahålla tolkningsinformation för en årskomponent i ett datum.

**Metoder och egenskaper**

#### `year_format`

Det [`strftime()`](https://docs.python.org/3/library/time.html#time.strftime)-format som ska användas när året analyseras. Som standard är detta `'%Y'`.

#### `year`

**Optional** Värdet för årtalet, som en sträng. Som standard inställt på `None`, vilket innebär att året kommer att bestämmas på annat sätt.

#### `get_year_format()`

Returnerar [`strftime()`](https://docs.python.org/3/library/time.html#time.strftime)-formatet som ska användas vid parsning av årtalet. Returnerar [`year_format`](#django.views.generic.dates.YearMixin.year_format) som standard.

#### `get_year()`

Returnerar året för vilket denna vy kommer att visa data, som en sträng. Prövar följande källor i tur och ordning:

- Värdet på attributet [`YearMixin.year`](#django.views.generic.dates.YearMixin.year).
- Värdet på argumentet `year` som fångas upp i URL-mönstret.
- Värdet av frågeargumentet `year` `GET`.

Ger 404 om ingen giltig årsspecifikation kan hittas.

#### `get_next_year(date)`

Returnerar ett datumobjekt som innehåller den första dagen i året efter det angivna datumet. Denna funktion kan också returnera `None` eller ge upphov till ett [`Http404`](/sv/6.0/topics/http/views/#django.http.Http404) undantag, beroende på värdena för [`allow_empty`](#django.views.generic.dates.BaseDateListView.allow_empty) och [`allow_future`](#django.views.generic.dates.DateMixin.allow_future).

#### `get_previous_year(date)`

Returnerar ett datumobjekt som innehåller den första dagen i året före det angivna datumet. Denna funktion kan också returnera `None` eller ge upphov till ett [`Http404`](/sv/6.0/topics/http/views/#django.http.Http404) undantag, beroende på värdena för [`allow_empty`](#django.views.generic.dates.BaseDateListView.allow_empty) och [`allow_future`](#django.views.generic.dates.DateMixin.allow_future).

## `MånadMixin`

#### `class MonthMixin`

En mixin som kan användas för att hämta och tillhandahålla tolkningsinformation för en månadskomponent i ett datum.

**Metoder och egenskaper**

#### `month_format`

Det [`strftime()`](https://docs.python.org/3/library/time.html#time.strftime)-format som ska användas när månaden analyseras. Som standard är detta `'%b'`.

#### `month`

**Optional** Värdet för månaden, som en sträng. Som standard inställd på `None`, vilket innebär att månaden kommer att bestämmas på annat sätt.

#### `get_month_format()`

Returnerar [`strftime()`](https://docs.python.org/3/library/time.html#time.strftime)-formatet som ska användas vid parsning av månaden. Returnerar [`month_format`](#django.views.generic.dates.MonthMixin.month_format) som standard.

#### `get_month()`

Returnerar den månad för vilken denna vy kommer att visa data, som en sträng. Prövar följande källor i tur och ordning:

- Värdet på attributet [`MonthMixin.month`](#django.views.generic.dates.MonthMixin.month).
- Värdet på argumentet `month` som fångas upp i URL-mönstret.
- Värdet på frågeargumentet `month` `GET`.

Ger 404 om ingen giltig månadsspecifikation kan hittas.

#### `get_next_month(date)`

Returnerar ett datumobjekt som innehåller den första dagen i månaden efter det angivna datumet. Denna funktion kan också returnera `None` eller ge upphov till ett [`Http404`](/sv/6.0/topics/http/views/#django.http.Http404) undantag, beroende på värdena för [`allow_empty`](#django.views.generic.dates.BaseDateListView.allow_empty) och [`allow_future`](#django.views.generic.dates.DateMixin.allow_future).

#### `get_previous_month(date)`

Returnerar ett datumobjekt som innehåller den första dagen i månaden före det angivna datumet. Denna funktion kan också returnera `None` eller ge upphov till ett [`Http404`](/sv/6.0/topics/http/views/#django.http.Http404) undantag, beroende på värdena för [`allow_empty`](#django.views.generic.dates.BaseDateListView.allow_empty) och [`allow_future`](#django.views.generic.dates.DateMixin.allow_future).

## `DayMixin`

#### `class DayMixin`

En mixin som kan användas för att hämta och tillhandahålla tolkningsinformation för en dagskomponent i ett datum.

**Metoder och egenskaper**

#### `day_format`

Det [`strftime()`](https://docs.python.org/3/library/time.html#time.strftime)-format som ska användas när dagen analyseras. Som standard är detta `%d'`.

#### `day`

**Optional** Värdet för dagen, som en sträng. Som standard inställd på `None`, vilket innebär att dagen kommer att bestämmas på annat sätt.

#### `get_day_format()`

Returnerar [`strftime()`](https://docs.python.org/3/library/time.html#time.strftime)-formatet som ska användas vid parsning av dagen. Returnerar [`day_format`](#django.views.generic.dates.DayMixin.day_format) som standard.

#### `get_day()`

Returnerar den dag för vilken denna vy ska visa data, som en sträng. Prövar följande källor i tur och ordning:

- Värdet på attributet [`DayMixin.day`](#django.views.generic.dates.DayMixin.day).
- Värdet på argumentet `day` som fångas upp i URL-mönstret.
- Värdet på frågeargumentet `day` `GET`.

Ger 404 om ingen giltig dagspecifikation kan hittas.

#### `get_next_day(date)`

Returnerar ett datumobjekt som innehåller nästa giltiga dag efter det angivna datumet. Denna funktion kan också returnera `None` eller ge upphov till ett [`Http404`](/sv/6.0/topics/http/views/#django.http.Http404) undantag, beroende på värdena för [`allow_empty`](#django.views.generic.dates.BaseDateListView.allow_empty) och [`allow_future`](#django.views.generic.dates.DateMixin.allow_future).

#### `get_previous_day(date)`

Returnerar ett datumobjekt som innehåller den föregående giltiga dagen. Denna funktion kan också returnera `None` eller ge upphov till ett [`Http404`](/sv/6.0/topics/http/views/#django.http.Http404) undantag, beroende på värdena för [`allow_empty`](#django.views.generic.dates.BaseDateListView.allow_empty) och [`allow_future`](#django.views.generic.dates.DateMixin.allow_future).

## `WeekMixin`

#### `class WeekMixin`

En mixin som kan användas för att hämta och tillhandahålla tolkningsinformation för en veckokomponent i ett datum.

**Metoder och egenskaper**

#### `week_format`

Det [`strftime()`](https://docs.python.org/3/library/time.html#time.strftime)-format som ska användas när veckan analyseras. Som standard är detta `'%U'`, vilket innebär att veckan börjar på söndag. Ställ in det till `'%W'` eller `'%V'` (ISO 8601-vecka) om din vecka börjar på måndag.

#### `week`

**Optional** Värdet för veckan, som en sträng. Som standard inställd på `None`, vilket innebär att veckan kommer att bestämmas på annat sätt.

#### `get_week_format()`

Returnerar [`strftime()`](https://docs.python.org/3/library/time.html#time.strftime)-formatet som ska användas vid parsning av veckan. Returnerar [`week_format`](#django.views.generic.dates.WeekMixin.week_format) som standard.

#### `get_week()`

Returnerar den vecka för vilken denna vy kommer att visa data, som en sträng. Prövar följande källor i tur och ordning:

- Värdet på attributet [`WeekMixin.week`](#django.views.generic.dates.WeekMixin.week).
- Värdet på argumentet `week` som fångas upp i URL-mönstret
- Värdet på frågeargumentet `week` `GET`.

Ger 404 om ingen giltig veckospecifikation kan hittas.

#### `get_next_week(date)`

Returnerar ett datumobjekt som innehåller den första dagen i veckan efter det angivna datumet. Denna funktion kan också returnera `None` eller ge upphov till ett [`Http404`](/sv/6.0/topics/http/views/#django.http.Http404) undantag, beroende på värdena för [`allow_empty`](#django.views.generic.dates.BaseDateListView.allow_empty) och [`allow_future`](#django.views.generic.dates.DateMixin.allow_future).

#### `get_prev_week(date)`

Returnerar ett datumobjekt som innehåller den första dagen i veckan före det angivna datumet. Denna funktion kan också returnera `None` eller ge upphov till ett [`Http404`](/sv/6.0/topics/http/views/#django.http.Http404) undantag, beroende på värdena för [`allow_empty`](#django.views.generic.dates.BaseDateListView.allow_empty) och [`allow_future`](#django.views.generic.dates.DateMixin.allow_future).

## `DatumMixin`

#### `class DateMixin`

En mixin-klass som ger ett gemensamt beteende för alla datumbaserade vyer.

**Metoder och egenskaper**

#### `date_field`

Namnet på den `DateField` eller `DateTimeField` i `QuerySet`-modellen som det datumbaserade arkivet ska använda för att fastställa listan över objekt som ska visas på sidan.

När [time zone support](/sv/6.0/topics/i18n/timezones/) är aktiverat och `date_field` är en `DateTimeField`, antas datum vara i den aktuella tidszonen. I annat fall kan frågeuppsättningen innehålla objekt från föregående eller nästa dag i slutanvändarens tidszon.

> **Warning**
>
> I den här situationen, om du har implementerat tidszonsval per användare, kan samma URL visa en annan uppsättning objekt beroende på slutanvändarens tidszon. För att undvika detta bör du använda en `DateField` som attribut för `date_field`.

#### `allow_future`

Ett boolean som anger om ”framtida” objekt ska inkluderas på den här sidan, där ”framtida” betyder objekt där fältet som anges i `date_field` är större än aktuellt datum/tid. Som standard är detta `False`.

#### `get_date_field()`

Returnerar namnet på det fält som innehåller de datumdata som den här vyn ska hantera. Returnerar [`date_field`](#django.views.generic.dates.DateMixin.date_field) som standard.

#### `get_allow_future()`

Bestämmer om ”framtida” objekt ska inkluderas på den här sidan, där ”framtida” betyder objekt där fältet som anges i `date_field` är större än aktuellt datum/tid. Returnerar [`allow_future`](#django.views.generic.dates.DateMixin.allow_future) som standard.

## `BaseDateListView`

#### `class BaseDateListView`

En basklass som ger ett gemensamt beteende för alla datumbaserade vyer. Det kommer normalt inte att finnas någon anledning att instansiera [`BaseDateListView`](#django.views.generic.dates.BaseDateListView); instansiera en av underklasserna istället.

Medan den här vyn (och dess underklasser) körs kommer `self.object_list` att innehålla listan över objekt som vyn arbetar med och `self.date_list` kommer att innehålla listan över datum för vilka data finns tillgängliga.

**Mixins**

- [`DateMixin`](#django.views.generic.dates.DateMixin)
- [`MultipleObjectMixin`](/sv/6.0/ref/class-based-views/mixins-multiple-object/#django.views.generic.list.MultipleObjectMixin)

**Metoder och egenskaper**

#### `allow_empty`

En boolean som anger om sidan ska visas om inga objekt finns tillgängliga. Om detta är `True` och inga objekt finns tillgängliga, kommer vyn att visa en tom sida istället för att skicka en 404.

Detta är identiskt med [`django.views.generic.list.MultipleObjectMixin.allow_empty`](/sv/6.0/ref/class-based-views/mixins-multiple-object/#django.views.generic.list.MultipleObjectMixin.allow_empty), förutom standardvärdet som är `False`.

#### `date_list_period`

**Optional** En sträng som definierar aggregeringsperioden för `date_list`. Den måste vara en av `'year'` (standard), `'month'` eller `'day'`.

#### `get_dated_items()`

Returnerar en 3-tupel som innehåller (`date_list`, `object_list`, `extra_context`).

`date_list` är listan över datum för vilka data finns tillgängliga. `object_list` är en lista över objekt. `extra_context` är en ordbok med kontextdata som kommer att läggas till alla kontextdata som tillhandahålls av [`MultipleObjectMixin`](/sv/6.0/ref/class-based-views/mixins-multiple-object/#django.views.generic.list.MultipleObjectMixin).

#### `get_dated_queryset(**lookup)`

Returnerar en frågeuppsättning, filtrerad med hjälp av de frågeargument som definieras av `lookup`. Tillämpar eventuella restriktioner på frågeuppsättningen, t.ex. `allow_empty` och `allow_future`.

#### `get_date_list_period()`

Returnerar aggregeringsperioden för `date_list`. Returnerar [`date_list_period`](#django.views.generic.dates.BaseDateListView.date_list_period) som standard.

#### `get_date_list(queryset, date_type=None, ordering='ASC')`

Returnerar listan med datum av typen `date_type` som `queryset` innehåller poster för. Till exempel: kommer `get_date_list(qs, 'year')` att returnera listan över år för vilka `qs` har poster. Om `date_type` inte anges, används resultatet av [`get_date_list_period()`](#django.views.generic.dates.BaseDateListView.get_date_list_period). `date_type` och `ordering` skickas till [`QuerySet.dates()`](/sv/6.0/ref/models/querysets/#django.db.models.query.QuerySet.dates).
