Spec-Zone.ru › Wagtail

Модельное справочное руководство

wagtail.models разделен на подмодули для обеспечения поддерживаемости. Все определения, предназначенные для публичного использования, должны импортироваться сюда (с комментариями «noqa», если необходимо), а внешний код должен продолжать импортировать их из wagtail.models (например, from wagtail.models import Site, а не from wagtail.models.sites import Site.)

Подмодули должны следить за согласованностью направления зависимостей; по возможности, они должны реализовывать низкоуровневую общую функциональность, которая затем импортируется моделями более высокого уровня, такими как Page.

Этот документ содержит справочную информацию по классам моделей внутри модуля wagtailcore.

Page

Поля базы данных

Методы и свойства

В дополнение к полям модели, Page имеет множество свойств и методов, которые вам, возможно, захочется использовать, сослаться на них или переопределить при создании собственных моделей.

Примечание

См. также API узлов https://django-treebeard.readthedocs.io/en/latest/api.html в документации django-treebeard. Page является подклассом узлов дерева с материализованным путем материализованного пути.

Site

Модель Site полезна для многосайтовых установок, поскольку она позволяет администратору настраивать часть дерева, используемую для каждого хост-имени, на котором отвечает сервер.

Функция find_for_request() возвращает объект Site, который будет обрабатывать данный HTTP-запрос.

Поля базы данных

Методы и свойства

Locale

Модель Locale определяет набор языков и/или локалей, которые могут использоваться на сайте. Каждая запись Locale соответствует «коду языка», определённому в настройке :ref:wagtail_content_languages_setting.

Wagtail изначально настроит один Locale в качестве языка по умолчанию для всего существующего контента. Этот первый язык автоматически получит значение из WAGTAIL_CONTENT_LANGUAGES, наиболее близкое к коду языка сайта по умолчанию, определенному в LANGUAGE_CODE. Если первичный код языка будет изменён позже, Wagtail не будет автоматически создавать новую запись Locale или обновлять существующую.

До активации международной поддержки все страницы используют этот первичный Locale язык. Это необходимо для удовлетворения ограничений базы данных и упрощает включение международной поддержки в более позднее время.

Изменение WAGTAIL_CONTENT_LANGUAGES

Языки могут быть добавлены или удалены из WAGTAIL_CONTENT_LANGUAGES со временем.

Прежде чем удалять опцию из WAGTAIL_CONTENT_LANGUAGES, важно, чтобы запись Locale была обновлена на использование другого языка контента или была удалена. Любые экземпляры Locale с недопустимыми языками контента автоматически отфильтровываются из всех запросов к базе данных, что делает их нередактируемыми и невидимыми.

Методы и свойства

TranslatableMixin

TranslatableMixin — это абстрактная модель, которую можно добавить к любой модели Django, не являющейся страницей, чтобы сделать её переводимой. Страницы уже включают этот миксин, поэтому добавлять его не нужно.

Поля базы данных

Поля locale и translation_key имеют уникальное ограничение ключа, чтобы предотвратить перевод объекта на один и тот же язык более одного раза.

Методы и свойства

PreviewableMixin

PreviewableMixin — это миксин-класс, который можно добавить к любой модели Django, не являющейся страницей, чтобы разрешить предварительный просмотр её экземпляров. Страницы уже включают этот миксин, поэтому добавлять его не нужно.

Добавлено в версии 4.0: Класс добавлен, чтобы разрешить сниппетам иметь живой предварительный просмотр в редакторе. Подробности см. в Разрешение предварительного просмотра сниппетов.

Методы и свойства

RevisionMixin

RevisionMixin — это абстрактная модель, которую можно добавить к любой модели Django, не являющейся страницей, чтобы разрешить сохранение версий её экземпляров. Страницы уже включают этот миксин, поэтому добавлять его не нужно.

Добавлено в версии 4.0: Модель добавлена, чтобы разрешить сниппетам сохранять версии, отменять изменения до предыдущей версии и сравнивать изменения между версиями. Подробности см. в Сохранение версий сниппетов.

Поля базы данных

Методы и свойства

DraftStateMixin

DraftStateMixin — это абстрактная модель, которую можно добавить к любой модели Django, не являющейся страницей, чтобы разрешить её экземплярам иметь не опубликованные изменения. Этот миксин требует применения RevisionMixin. Страницы уже включают этот миксин, поэтому добавлять его не нужно.

Добавлено в версии 4.0: Модель добавлена, чтобы разрешить сниппетам иметь изменения, которые не сразу отражаются в экземпляре. Подробности см. в Сохранение черновиков изменений сниппетов.

Поля базы данных

Методы и свойства

Revision

Каждый раз, когда страница редактируется, создается и сохраняется новая Revision. Она может использоваться для поиска всей истории изменений, внесенных в страницу, а также для хранения новых изменений до публикации.

  • Ревизии могут быть созданы из любого экземпляра RevisionMixin вызовом его метода save_revision().
  • Содержимое страницы сериализуется в формате JSON и хранится в поле content.
  • Вы можете получить Revision как экземпляр модели объекта, вызвав метод as_object().

Изменено в версии 4.0: Модель переименована из PageRevision в Revision и теперь ссылается на модель Page с помощью GenericForeignKey.

Поля базы данных

Менеджеры

Методы и свойства

GroupPagePermission

Поля базы данных

PageViewRestriction

Поля базы данных

Orderable (абстрактный)

Поля базы данных

Workflow

Рабочие процессы представляют собой последовательность задач, которые должны быть одобрены для выполнения действия со страницей — как правило, публикации.

Поля базы данных

Методы и свойства

WorkflowState

Состояния рабочего процесса представляют собой статус запущенного рабочего процесса на странице.

Поля базы данных

Методы и свойства

Task

Задачи представляют собой этапы в рабочем процессе, которые должны быть одобрены для успешного завершения рабочего процесса.

Поля базы данных

Методы и свойства

TaskState

Состояния задач хранят информацию о состоянии выполнения задачи на конкретной ревизии страницы.

Поля базы данных

Методы и свойства

WorkflowTask

Представляет порядок задачи в определенном рабочем процессе.

Поля базы данных

WorkflowPage

Представляет назначение рабочего процесса странице и её потомкам.

Поля базы данных

BaseLogEntry

Абстрактный базовый класс, представляющий запись о действии, выполненном над объектом.

Поля базы данных

Методы и свойства

PageLogEntry

Представляет запись о действии, выполненном над Page, подкласс BaseLogEntry.

Поля базы данных

Comment

Представляет собой комментарий к странице.

Поля базы данных

CommentReply

Представляет ответ на комментарий в потоке комментариев.

Поля базы данных

END_OF_DOCUMENT_MARKER

PageSubscription

Представляет подписку пользователя на уведомления по электронной почте о событиях на странице. В настоящее время используется только для уведомлений о комментариях.

Поля базы данных

© 2014-present Torchbox Ltd and individual contributors.
All rights are reserved.
Licensed under the BSD License.
https://docs.wagtail.org/en/stable/reference/pages/model_reference.html

Spec-Zone.ru

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