Модель страницы трясогузки: сущность внешнего ключа + несколько параметров - PullRequest
0 голосов
/ 07 апреля 2019

Я использую Wagtail CMS для создания каталога товаров.Я создал базовый тип страницы для продукта:

class Product(Page):    

Он имеет основные поля, такие как заголовок, описание, изображение также.Но мне нужно «что-то особенное»:

Существует специальная часть, доступная во многих вариантах, и каждый продукт может иметь некоторые из них.Поэтому я создал другую модель, очень простую:

@register_snippet
class Variant(models.Model):

для хранения всех вариантов.Вариант имеет имя и изображение.Существует около 200 продуктов и 30 вариантов.

Моя проблема в том, и я не знаю, как управлять в Wagtail двумя задачами:

  1. , чтобы связать продукт с вариантами (внешний ключ) с отношением «многие ко многим» для выбора вариантов, связанных с продуктом, на той же странице, что и другие объекты страницы

  2. каждое отношение имеет дополнительные параметры (2 параметра), которые являются специфическими для отношения (материал идиаметр) и снова я не нашел, как отображать и управлять такими отношениями в редакторе страниц

Я знаю, что Django может справиться с этим с помощью встроенных наборов форм (администратор django поддерживает это из коробки), но есть ли Wagtail-способ сделать это и редактировать редактором Wagtail?Я предпочитаю управлять всем продуктом в одном месте, а не отношениями, разделенными в django-admin.

Спасибо за любую помощь или совет.

1 Ответ

1 голос
/ 07 апреля 2019

InlinePanel - эквивалент Wagtail встроенных форм-наборов администратора Django. Пример этого дан в уроке Wagtail: https://docs.wagtail.io/en/stable/getting_started/tutorial.html#images

В данном случае это настройка отношения «многие ко многим» между страницами и изображениями с дополнительным параметром (заголовком) для отношения; Ваше отношение Product -> Variant может быть настроено таким же образом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...