Enkla mixins¶
KontextMixin¶
- class django.views.generic.base.ContextMixin¶
Attribut
- extra_context¶
En ordbok som ska inkluderas i sammanhanget. Detta är ett bekvämt sätt att ange en kontext i
as_view(). Exempel på användning:from django.views.generic import TemplateView TemplateView.as_view(extra_context={"title": "Custom Title"})
Metoder
- get_context_data(**kwargs)¶
Returnerar en ordbok som representerar mallkontexten. De nyckelordsargument som anges kommer att utgöra den returnerade kontexten. Exempel på användning:
def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) context["number"] = random.randrange(1, 100) return context
Mallkontexten för alla klassbaserade generiska vyer innehåller en variabel
viewsom pekar på instansenView.Använd
alters_datadär det är lämpligtNote that having the view instance in the template context may expose potentially hazardous methods to template authors. To prevent methods like this from being called in the template, set
alters_data=Trueon those methods. For more information, read the documentation on rendering a template context.
TemplateResponseMixin¶
- class django.views.generic.base.TemplateResponseMixin¶
Tillhandahåller en mekanism för att konstruera en
TemplateResponse, givet lämpligt sammanhang. Den mall som ska användas är konfigurerbar och kan anpassas ytterligare av underklasser.Attribut
- template_name¶
Det fullständiga namnet på en mall som ska användas, definierat av en sträng. Om du inte definierar ett
template_namekommer ett undantag avdjango.core.exceptions.ImproperlyConfigured`att uppstå.
- template_engine¶
NAMEför en mallmotor som ska användas för att ladda mallen.template_engineskickas somusingnyckelordsargument tillresponse_class. Standard ärNone, vilket säger till Django att söka efter mallen i alla konfigurerade motorer.
- response_class¶
Den svarsklass som ska returneras av metoden
render_to_response. Standard ärTemplateResponse. Mallen och kontexten förTemplateResponse-instanser kan ändras senare (t.ex. i template response middleware).Om du behöver anpassad laddning av mallar eller anpassad instansiering av kontextobjekt skapar du en subklass av
TemplateResponseoch tilldelar den tillresponse_class.
- content_type¶
Den innehållstyp som ska användas för svaret.
content_typeskickas som ett nyckelordsargument tillresponse_class. Standard ärNone- vilket innebär att Django använder'text/html.
Metoder
- render_to_response(context, **response_kwargs)¶
Returnerar en instans av
self.response_class.Om några nyckelordsargument anges kommer de att skickas till konstruktören för svarsklassen.
Calls
get_template_names()to obtain the list of template names that will be searched looking for an existent template.
- get_template_names()¶
Returnerar en lista med mallnamn att söka efter vid rendering av mallen. Den första mallen som hittas kommer att användas.
Standardimplementeringen returnerar en lista som innehåller
template_name(om det anges).