Spec-Zone.ru › Django 5.2

Простые миксины

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/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API