Простые миксины
ContextMixin
-
class django.views.generic.base.ContextMixin -
Атрибуты
-
extra_context -
Словарь, который нужно включить в контекст. Это удобный способ указать некоторый контекст в
as_view(). Пример использования:from django.views.generic import TemplateView TemplateView.as_view(extra_context={"title": "Custom Title"})
Методы
-
get_context_data(**kwargs) -
Возвращает словарь, представляющий контекст шаблона. Переданные ключевые аргументы составят возвращаемый контекст. Пример использования:
def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) context["number"] = random.randrange(1, 100) return contextКонтекст шаблона всех шаблонно-ориентированных общих представлений включает переменную
view, которая ссылается на экземплярView.Используйте
alters_data, где необходимоОбратите внимание, что наличие экземпляра представления в контексте шаблона может предоставить авторам шаблонов потенциально опасные методы. Чтобы предотвратить вызов таких методов в шаблоне, установите
alters_data=Trueдля этих методов. Для получения дополнительной информации ознакомьтесь с документацией по отображению контекста шаблона.
-
TemplateResponseMixin
-
class django.views.generic.base.TemplateResponseMixin -
Предоставляет механизм для создания
TemplateResponse, при наличии подходящего контекста. Шаблон для использования настраивается и может быть дополнительно настроен подклассами.Атрибуты
-
template_name -
Полное имя шаблона, определенное строкой. Если не определено
template_name, будет поднято исключениеdjango.core.exceptions.ImproperlyConfigured.
-
template_engine -
NAMEдвижка шаблонов для загрузки шаблона.template_engineпередается в качестве ключевого аргументаusingвresponse_class. По умолчанию этоNone, что говорит Django искать шаблон во всех настроенных движках.
-
response_class -
Класс ответа, который будет возвращен методом
render_to_response. По умолчаниюTemplateResponse. Шаблон и контекст экземпляровTemplateResponseмогут быть изменены позже (например, в средствах обработки шаблонов ответа).Если вам нужен пользовательский загрузчик шаблонов или пользовательская инициализация объекта контекста, создайте подкласс
TemplateResponseи назначьте егоresponse_class.
-
content_type -
Тип содержимого для использования в ответе.
content_typeпередается в качестве ключевого аргумента вresponse_class. По умолчаниюNone— означает, что Django использует'text/html'.
Методы
-
render_to_response(context, **response_kwargs) -
Возвращает экземпляр
self.response_class.Если предоставлены какие-либо ключевые аргументы, они будут переданы в конструктор класса ответа.
Вызывает
get_template_names()для получения списка имен шаблонов, которые будут проверяться на существование.
-
get_template_names() -
Возвращает список имен шаблонов для поиска при отрисовке шаблона. Будет использован первый найденный шаблон.
Реализация по умолчанию вернет список, содержащий
template_name(если оно указано).
-
© Django Software Foundation and individual contributors
Licensed under the BSD License.
https://docs.djangoproject.com/en/5.2/ref/class-based-views/mixins-simple/