{"title":"Classes mixins pour objets multiples","version":"1.11","locale":"fr","docname":"ref/class-based-views/mixins-multiple-object","url":"/fr/1.11/ref/class-based-views/mixins-multiple-object/","canonical":"https://djangodocs.dev/fr/1.11/ref/class-based-views/mixins-multiple-object/","summary":"MultipleObjectMixin Lien vers cette rubrique # class django.views.generic.list. MultipleObjectMixin Lien vers cette définition # Une classe mixin pouvant être…","html":"<h1>Classes mixins pour objets multiples<a class=\"heading-anchor\" href=\"#multiple-object-mixins\"><span class=\"visually-hidden\">Lien vers cette rubrique</span><span aria-hidden=\"true\">#</span></a></h1>\n<section id=\"multipleobjectmixin\">\n<h2><code class=\"docutils literal notranslate\">MultipleObjectMixin</code><a class=\"heading-anchor\" href=\"#multipleobjectmixin\"><span class=\"visually-hidden\">Lien vers cette rubrique</span><span aria-hidden=\"true\">#</span></a></h2>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectMixin\">\n<em class=\"property\"><span class=\"k\">class</span> </em><span class=\"sig-prename descclassname\">django.views.generic.list.</span><span class=\"sig-name descname\">MultipleObjectMixin</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectMixin\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Une classe mixin pouvant être utilisée pour afficher une liste d’objets.</p>\n<p>Si <code class=\"docutils literal notranslate\">paginate_by</code> est indiqué, Django pagine les résultats renvoyés par la vue. Il est possible d’indiquer le numéro de page dans l’URL de deux manières différentes :</p>\n<ul>\n<li><p>En utilisant le paramètre <code class=\"docutils literal notranslate\">page</code> dans la configuration d’URL. Par exemple, voici à quoi pourrait ressembler la configuration d’URL :</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code>url<span class=\"p\">(</span><span class=\"sa\">r</span><span class=\"s1\">&#39;^objects/page(?P&lt;page&gt;[0-9]+)/$&#39;</span><span class=\"p\">,</span> PaginatedView<span class=\"o\">.</span>as_view<span class=\"p\">()),</span>\n</code></pre></div>\n</li>\n<li><p>En passant le numéro de page comme paramètre dans la chaîne de requête de l’URL. Par exemple, une URL pourrait ressembler à ceci :</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code>/objects/?page=3\n</code></pre></div>\n</li>\n</ul>\n<p>Ces listes et valeurs sont indexées à partir de 1, et non 0, ce qui fait que la première page est représentée par la page <code class=\"docutils literal notranslate\">1</code>.</p>\n<p>Pour plus de détails sur la pagination, lisez la <a class=\"reference internal\" href=\"/fr/1.11/topics/pagination/\"><span class=\"doc\">documentation sur la pagination</span></a>.</p>\n<p>Comme cas particulier, il est aussi permis d’utiliser <code class=\"docutils literal notranslate\">last</code> (dernier) comme valeur pour la variable <code class=\"docutils literal notranslate\">page</code>:</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code>/objects/?page=last\n</code></pre></div>\n<p>Cela permet d’accéder à la dernière page des résultats sans devoir d’abord déterminer le nombre total de pages.</p>\n<p>Notez que <code class=\"docutils literal notranslate\">page</code> <em>doit</em> contenir un numéro de page valide ou la valeur <code class=\"docutils literal notranslate\">last</code>; toute autre valeur transmise à <code class=\"docutils literal notranslate\">page</code> produit une erreur 404.</p>\n<p><strong>Étend</strong></p>\n<ul class=\"simple\">\n<li><p><a class=\"reference internal\" href=\"/fr/1.11/ref/class-based-views/mixins-simple/#django.views.generic.base.ContextMixin\" title=\"django.views.generic.base.ContextMixin\"><code class=\"xref py py-class docutils literal notranslate\">django.views.generic.base.ContextMixin</code></a></p></li>\n</ul>\n<p><strong>Méthodes et attributs</strong></p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectMixin.allow_empty\">\n<span class=\"sig-name descname\">allow_empty</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectMixin.allow_empty\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Une valeur booléenne indiquant s’il faut afficher la page quand aucun objet n’est disponible. Si définie à <code class=\"docutils literal notranslate\">False</code> et qu’aucun objet n’est disponible, la vue génère une erreur 404 au lieu d’afficher une page vide. La valeur par défaut est <code class=\"docutils literal notranslate\">True</code>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectMixin.model\">\n<span class=\"sig-name descname\">model</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectMixin.model\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Le modèle pour lequel cette vue va afficher des données. Indiquer <code class=\"docutils literal notranslate\">model = Foo</code> revient au même que de définir <code class=\"docutils literal notranslate\">queryset = Foo.objects.all()</code>, où <code class=\"docutils literal notranslate\">objects</code> correspond au <a class=\"reference internal\" href=\"/fr/1.11/topics/db/managers/#default-managers\"><span class=\"std std-ref\">gestionnaire par défaut</span></a> de <code class=\"docutils literal notranslate\">Foo</code>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectMixin.queryset\">\n<span class=\"sig-name descname\">queryset</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectMixin.queryset\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Un objet <code class=\"docutils literal notranslate\">QuerySet</code> représentant les objets. Lorsqu’elle est renseignée, la valeur de <code class=\"docutils literal notranslate\">queryset</code> écrase la valeur fournie pour <a class=\"reference internal\" href=\"#django.views.generic.list.MultipleObjectMixin.model\" title=\"django.views.generic.list.MultipleObjectMixin.model\"><code class=\"xref py py-attr docutils literal notranslate\">model</code></a>.</p>\n<aside class=\"admonition admonition-warning\" role=\"note\">\n<p class=\"admonition-title\">Avertissement</p>\n<p><code class=\"docutils literal notranslate\">queryset</code> est un attribut de classe avec une valeur <em>modifiable</em>, il faut donc être très prudent lorsqu’on l’utilise directement. Avant de l’utiliser, appelez sa méthode <a class=\"reference internal\" href=\"/fr/1.11/ref/models/querysets/#django.db.models.query.QuerySet.all\" title=\"django.db.models.query.QuerySet.all\"><code class=\"xref py py-meth docutils literal notranslate\">all()</code></a> ou obtenez-la avec <a class=\"reference internal\" href=\"#django.views.generic.list.MultipleObjectMixin.get_queryset\" title=\"django.views.generic.list.MultipleObjectMixin.get_queryset\"><code class=\"xref py py-meth docutils literal notranslate\">get_queryset()</code></a> qui se charge du clonage en arrière-plan.</p>\n</aside>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectMixin.ordering\">\n<span class=\"sig-name descname\">ordering</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectMixin.ordering\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Une chaîne ou une liste de chaînes indiquant l’ordre de tri à appliquer à <code class=\"docutils literal notranslate\">queryset</code>. Les valeurs possibles sont les mêmes que pour <a class=\"reference internal\" href=\"/fr/1.11/ref/models/querysets/#django.db.models.query.QuerySet.order_by\" title=\"django.db.models.query.QuerySet.order_by\"><code class=\"xref py py-meth docutils literal notranslate\">order_by()</code></a>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectMixin.paginate_by\">\n<span class=\"sig-name descname\">paginate_by</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectMixin.paginate_by\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Un nombre entier indiquant combien d’objets doivent être affichés par page. Lorsque cette valeur est présente, la vue pagine les objets avec <code class=\"docutils literal notranslate\">paginate_by</code> objets par page. La vue s’attend soit à ce que la chaîne de requête de l’URL contienne un paramètre <code class=\"docutils literal notranslate\">page</code> (par <code class=\"docutils literal notranslate\">request.GET</code>) ou qu’une variable <code class=\"docutils literal notranslate\">page</code> ait été définie dans la configuration d’URL.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectMixin.paginate_orphans\">\n<span class=\"sig-name descname\">paginate_orphans</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectMixin.paginate_orphans\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Un nombre entier indiquant le nombre d’objets surnuméraires que la dernière page peut contenir. Cette valeur s’ajoute au nombre <a class=\"reference internal\" href=\"#django.views.generic.list.MultipleObjectMixin.paginate_by\" title=\"django.views.generic.list.MultipleObjectMixin.paginate_by\"><code class=\"xref py py-attr docutils literal notranslate\">paginate_by</code></a> pour la dernière page, afin d’éviter que la dernière page contienne un très petit nombre d’objets.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectMixin.page_kwarg\">\n<span class=\"sig-name descname\">page_kwarg</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectMixin.page_kwarg\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Une chaîne indiquant le nom à utiliser pour le paramètre de page. La vue s’attend à la présence de ce paramètre soit comme paramètre de la chaîne de requête de l’URL (via <code class=\"docutils literal notranslate\">request.GET</code>) ou comme variable nommée présente dans la configuration d’URL. La valeur par défaut est <code class=\"docutils literal notranslate\">page</code>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectMixin.paginator_class\">\n<span class=\"sig-name descname\">paginator_class</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectMixin.paginator_class\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>La classe de pagination à utiliser pour effectuer la pagination. Par défaut, c’est <a class=\"reference internal\" href=\"/fr/1.11/topics/pagination/#django.core.paginator.Paginator\" title=\"django.core.paginator.Paginator\"><code class=\"xref py py-class docutils literal notranslate\">django.core.paginator.Paginator</code></a> qui est utilisée. Si la classe de pagination personnalisée ne possède pas la même interface de constructeur que <a class=\"reference internal\" href=\"/fr/1.11/topics/pagination/#django.core.paginator.Paginator\" title=\"django.core.paginator.Paginator\"><code class=\"xref py py-class docutils literal notranslate\">django.core.paginator.Paginator</code></a>, vous devrez également fournir une implémentation pour <a class=\"reference internal\" href=\"#django.views.generic.list.MultipleObjectMixin.get_paginator\" title=\"django.views.generic.list.MultipleObjectMixin.get_paginator\"><code class=\"xref py py-meth docutils literal notranslate\">get_paginator()</code></a>.</p>\n</dd></dl>\n\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectMixin.context_object_name\">\n<span class=\"sig-name descname\">context_object_name</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectMixin.context_object_name\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Désigne le nom de la variable à utiliser dans le contexte.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectMixin.get_queryset\">\n<span class=\"sig-name descname\">get_queryset</span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectMixin.get_queryset\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Obtient la liste des éléments de la vue. Ce résultat doit être itérable et peut contenir un jeu de requête (pour lequel le comportement spécifique des jeux de requête est activé).</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectMixin.get_ordering\">\n<span class=\"sig-name descname\">get_ordering</span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectMixin.get_ordering\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Renvoie une chaîne (ou une liste de chaînes) définissant le tri qui sera appliqué à <code class=\"docutils literal notranslate\">queryset</code>.</p>\n<p>Renvoie <a class=\"reference internal\" href=\"#django.views.generic.list.MultipleObjectMixin.ordering\" title=\"django.views.generic.list.MultipleObjectMixin.ordering\"><code class=\"xref py py-attr docutils literal notranslate\">ordering</code></a> par défaut.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectMixin.paginate_queryset\">\n<span class=\"sig-name descname\">paginate_queryset</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">queryset</em>, <em class=\"sig-param\">page_size</em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectMixin.paginate_queryset\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Renvoie un tuple à 4 éléments contenant (<code class=\"docutils literal notranslate\">paginator</code>, <code class=\"docutils literal notranslate\">page</code>, <code class=\"docutils literal notranslate\">object_list</code>, <code class=\"docutils literal notranslate\">is_paginated</code>).</p>\n<p>Construit en paginant <code class=\"docutils literal notranslate\">queryset</code> en pages de taille <code class=\"docutils literal notranslate\">page_size</code>. Si la requête contient un paramètre <code class=\"docutils literal notranslate\">page</code>, soit comme paramètre capturé dans l’URL ou sous forme de paramètre GET, <code class=\"docutils literal notranslate\">object_list</code> correspondra aux objets de cette page.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectMixin.get_paginate_by\">\n<span class=\"sig-name descname\">get_paginate_by</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">queryset</em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectMixin.get_paginate_by\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Renvoie le nombre d’éléments sur lequel baser la pagination, ou <code class=\"docutils literal notranslate\">None</code> pour éviter la pagination. Par défaut, cela renvoie simplement la valeur de <a class=\"reference internal\" href=\"#django.views.generic.list.MultipleObjectMixin.paginate_by\" title=\"django.views.generic.list.MultipleObjectMixin.paginate_by\"><code class=\"xref py py-attr docutils literal notranslate\">paginate_by</code></a>.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectMixin.get_paginator\">\n<span class=\"sig-name descname\">get_paginator</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">queryset</em>, <em class=\"sig-param\">per_page</em>, <em class=\"sig-param\">orphans<span class=\"o\">=</span><span class=\"default_value\">0</span></em>, <em class=\"sig-param\">allow_empty_first_page<span class=\"o\">=</span><span class=\"default_value\">True</span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectMixin.get_paginator\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Renvoie une instance de la classe de pagination à utiliser pour cette vue. Par défaut, une instance de <a class=\"reference internal\" href=\"#django.views.generic.list.MultipleObjectMixin.paginator_class\" title=\"django.views.generic.list.MultipleObjectMixin.paginator_class\"><code class=\"xref py py-attr docutils literal notranslate\">paginator_class</code></a> est renvoyée.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectMixin.get_paginate_orphans\">\n<span class=\"sig-name descname\">get_paginate_orphans</span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectMixin.get_paginate_orphans\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Un nombre entier indiquant le nombre d’objets surnuméraires que la dernière page peut contenir. Par défaut, c’est la valeur de <a class=\"reference internal\" href=\"#django.views.generic.list.MultipleObjectMixin.paginate_orphans\" title=\"django.views.generic.list.MultipleObjectMixin.paginate_orphans\"><code class=\"xref py py-attr docutils literal notranslate\">paginate_orphans</code></a> qui est renvoyée.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectMixin.get_allow_empty\">\n<span class=\"sig-name descname\">get_allow_empty</span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectMixin.get_allow_empty\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Renvoie une valeur booléenne indiquant s’il faut afficher la page quand aucun objet n’est disponible. Si cette méthode renvoie <code class=\"docutils literal notranslate\">False</code> et qu’aucun objet n’est disponible, la vue produit une erreur 404 au lieu d’afficher une page vide. La valeur par défaut est <code class=\"docutils literal notranslate\">True</code>.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectMixin.get_context_object_name\">\n<span class=\"sig-name descname\">get_context_object_name</span><span class=\"sig-paren\">(</span><em class=\"sig-param\">object_list</em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectMixin.get_context_object_name\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Renvoie le nom de la variable de contexte utilisée pour contenir la liste des données que cette vue manipule. Si <code class=\"docutils literal notranslate\">object_list</code> est un jeu de requête d’objets Django et que <a class=\"reference internal\" href=\"#django.views.generic.list.MultipleObjectMixin.context_object_name\" title=\"django.views.generic.list.MultipleObjectMixin.context_object_name\"><code class=\"xref py py-attr docutils literal notranslate\">context_object_name</code></a> n’est pas défini, le nom du contexte correspondra au nom de modèle des objets contenus dans le jeu de requête, ajouté du suffixe  <code class=\"docutils literal notranslate\">'_list'</code>. Par exemple, pour le modèle <code class=\"docutils literal notranslate\">Article</code>, la variable de contexte sera nommée par défaut <code class=\"docutils literal notranslate\">article_list</code>.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectMixin.get_context_data\">\n<span class=\"sig-name descname\">get_context_data</span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"o\">**</span>kwargs</em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectMixin.get_context_data\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Renvoie les données du contexte pour afficher la liste des objets.</p>\n</dd></dl>\n\n<p><strong>Contexte</strong></p>\n<ul class=\"simple\">\n<li><p><code class=\"docutils literal notranslate\">object_list</code>: la liste des objets que cette vue va afficher. Si <code class=\"docutils literal notranslate\">context_object_name</code> est renseigné, cette variable sera également définie dans le contexte, avec le même contenu que <code class=\"docutils literal notranslate\">object_list</code>.</p></li>\n<li><p><code class=\"docutils literal notranslate\">is_paginated</code>: une valeur booléenne indiquant si les résultats sont paginés. Plus particulièrement, <code class=\"docutils literal notranslate\">False</code> est renvoyé si aucune taille de page n’a été indiquée ou si les objets disponibles ne remplissent qu’une seule page.</p></li>\n<li><p><code class=\"docutils literal notranslate\">paginator</code>: une instance de <a class=\"reference internal\" href=\"/fr/1.11/topics/pagination/#django.core.paginator.Paginator\" title=\"django.core.paginator.Paginator\"><code class=\"xref py py-class docutils literal notranslate\">django.core.paginator.Paginator</code></a>. Si les objets ne sont pas paginés, cette variable de contexte vaut <code class=\"docutils literal notranslate\">None</code>.</p></li>\n<li><p><code class=\"docutils literal notranslate\">page_obj</code>: une instance de <a class=\"reference internal\" href=\"/fr/1.11/topics/pagination/#django.core.paginator.Page\" title=\"django.core.paginator.Page\"><code class=\"xref py py-class docutils literal notranslate\">django.core.paginator.Page</code></a>. Si les objets ne sont pas paginés, cette variable de contexte vaut <code class=\"docutils literal notranslate\">None</code>.</p></li>\n</ul>\n</dd></dl>\n\n</section>\n<section id=\"multipleobjecttemplateresponsemixin\">\n<h2><code class=\"docutils literal notranslate\">MultipleObjectTemplateResponseMixin</code><a class=\"heading-anchor\" href=\"#multipleobjecttemplateresponsemixin\"><span class=\"visually-hidden\">Lien vers cette rubrique</span><span aria-hidden=\"true\">#</span></a></h2>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectTemplateResponseMixin\">\n<em class=\"property\"><span class=\"k\">class</span> </em><span class=\"sig-prename descclassname\">django.views.generic.list.</span><span class=\"sig-name descname\">MultipleObjectTemplateResponseMixin</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectTemplateResponseMixin\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Une classe mixin produisant une réponse basée sur un gabarit pour les vues opérant sur une liste d’instances d’objets. Exige que la vue dans laquelle elle est intégrée fournisse <code class=\"docutils literal notranslate\">self.object_list</code>, la liste des instances d’objets sur lesquelles la vue opère. <code class=\"docutils literal notranslate\">self.object_list</code> peut être un objet <a class=\"reference internal\" href=\"/fr/1.11/ref/models/querysets/#django.db.models.query.QuerySet\" title=\"django.db.models.query.QuerySet\"><code class=\"xref py py-class docutils literal notranslate\">QuerySet</code></a>, mais ce n’est pas obligatoire.</p>\n<p><strong>Étend</strong></p>\n<ul class=\"simple\">\n<li><p><a class=\"reference internal\" href=\"/fr/1.11/ref/class-based-views/mixins-simple/#django.views.generic.base.TemplateResponseMixin\" title=\"django.views.generic.base.TemplateResponseMixin\"><code class=\"xref py py-class docutils literal notranslate\">TemplateResponseMixin</code></a></p></li>\n</ul>\n<p><strong>Méthodes et attributs</strong></p>\n<dl class=\"py attribute\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectTemplateResponseMixin.template_name_suffix\">\n<span class=\"sig-name descname\">template_name_suffix</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectTemplateResponseMixin.template_name_suffix\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Le suffixe à ajouter au nom de gabarit auto-généré. Le suffixe par défaut est <code class=\"docutils literal notranslate\">_list</code>.</p>\n</dd></dl>\n\n<dl class=\"py method\">\n<dt class=\"sig sig-object py\" id=\"django.views.generic.list.MultipleObjectTemplateResponseMixin.get_template_names\">\n<span class=\"sig-name descname\">get_template_names</span><span class=\"sig-paren\">(</span><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.views.generic.list.MultipleObjectTemplateResponseMixin.get_template_names\"><span class=\"visually-hidden\">Lien vers cette définition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd><p>Renvoie une liste de noms de gabarits potentiels. Cette liste contient :</p>\n<ul class=\"simple\">\n<li><p>la valeur de <code class=\"docutils literal notranslate\">template_name</code> de la vue (s’il est défini)</p></li>\n<li><p><code class=\"docutils literal notranslate\">&lt;nom_app&gt;/&lt;nom_modèle&gt;&lt;suffixe_gabarit&gt;.html</code></p></li>\n</ul>\n</dd></dl>\n\n</dd></dl>\n\n</section>","rootId":"multiple-object-mixins","toc":[{"title":"MultipleObjectMixin","anchor":"multipleobjectmixin","children":[]},{"title":"MultipleObjectTemplateResponseMixin","anchor":"multipleobjecttemplateresponsemixin","children":[]}],"breadcrumbs":[{"docname":"ref/index","title":"Référence de l’API","url":"/fr/1.11/ref/"},{"docname":"ref/class-based-views/index","title":"API des vues intégrées fondées sur les classes","url":"/fr/1.11/ref/class-based-views/"},{"docname":"ref/class-based-views/mixins","title":"Vues « mixins » fondées sur les classes","url":"/fr/1.11/ref/class-based-views/mixins/"}],"prev":{"docname":"ref/class-based-views/mixins-single-object","title":"Classes mixins pour objet unique","url":"/fr/1.11/ref/class-based-views/mixins-single-object/"},"next":{"docname":"ref/class-based-views/mixins-editing","title":"Classes mixins d’édition","url":"/fr/1.11/ref/class-based-views/mixins-editing/"},"formats":{"html":"/fr/1.11/ref/class-based-views/mixins-multiple-object/","markdown":"/fr/1.11/ref/class-based-views/mixins-multiple-object.md","json":"/fr/1.11/ref/class-based-views/mixins-multiple-object.json"},"source":"https://github.com/django/django/blob/stable/1.11.x/docs/ref/class-based-views/mixins-multiple-object.txt","official":"https://docs.djangoproject.com/fr/1.11/ref/class-based-views/mixins-multiple-object/","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","1.11","1.10","1.9"],"inLocales":["en","fr","ja","id","pt-br","ko","es","el","pl"]}