Mixins simples¶
ContextMixin¶
- 
class django.views.generic.base.ContextMixin¶
- Attributs - 
extra_context¶
- Un dictionnaire à inclure dans le contexte. C’est un moyen pratique de fournir du contexte dans - as_view(). Exemple d’utilisation- from django.views.generic import TemplateView TemplateView.as_view(extra_context={"title": "Custom Title"}) 
 - Méthodes - 
get_context_data(**kwargs)¶
- Renvoie un dictionnaire représentant le contexte de gabarit. Les paramètres nommés fournis vont servir à former le contexte renvoyé. Exemple d’utilisation : - def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) context["number"] = random.randrange(1, 100) return context - Le contexte de gabarit de toutes les vues génériques fondées sur les classes contiennent une variable - viewqui pointe dur l’instance- View.- Utilisation de - alters_dataquand c’est nécessaire- Notez que le fait d’avoir l’instance de vue dans le contexte du gabarit peut exposer des méthodes potentiellement dangereuses aux rédacteurs de gabarits. Pour éviter que de telles méthodes soient appelées à partir des gabarits, définissez - alters_data=Truepour ces méthodes. Pour plus d’informations, lisez la documentation sur l’affichage d’un contexte de gabarit.
 
- 
TemplateResponseMixin¶
- 
class django.views.generic.base.TemplateResponseMixin¶
- Fournit un mécanisme pour construire un objet - TemplateResponse, à partir d’un contexte approprié. Le gabarit employé peut être configuré et peut être personnalisé ensuite par les sous-classes.- Attributs - 
template_name¶
- Le nom complet d’un gabarit à employer sous forme de chaîne de caractères. Si - template_namen’est pas indiqué, une exception- django.core.exceptions.ImproperlyConfiguredest générée.
 - 
template_engine¶
- Le nom - NAMEd’un moteur de gabarit à utiliser pour le chargement du gabarit.- template_engineest transmis par le paramètre nommé- usingà- response_class. La valeur par défaut est- None, ce qui indique à Django de rechercher le gabarit avec tous les moteurs configurés.
 - 
response_class¶
- La classe de réponse que la méthode - render_to_responseva renvoyer. La classe par défaut est- TemplateResponse. Le gabarit et le contexte des instances- TemplateResponsepeut être modifié par la suite (par exemple dans un intergiciel de réponse de gabarit).- Si vous avez besoin d’un chargement personnalisé du gabarit ou d’une création personnalisée de l’objet de contexte, créez une sous-classe de - TemplateResponseet assignez-la à- response_class.
 - 
content_type¶
- Le type de contenu à utiliser pour la réponse. - content_typeest transmis sous forme de paramètre nommé à- response_class. La valeur par défaut est- None, ce qui signifie que Django utilise alors- 'text/html'.
 - Méthodes - 
render_to_response(context, **response_kwargs)¶
- Renvoie une instance de - self.response_class.- Tout paramètre nommé éventuellement fourni sera transmis au constructeur de la classe de réponse. - Appelle - get_template_names()afin d’obtenir la liste des noms de gabarits utilisés lors de la recherche de gabarit existants.
 - 
get_template_names()¶
- Renvoie une liste de noms de gabarits utilisés pour la recherche d’un gabarit à afficher. Le premier gabarit trouvé sera utilisé. - L’implémentation par défaut renvoie une liste contenant - template_name(pour autant qu’il soit renseigné).
 
- 
 
          