Модели Django - администратор: есть идеи для построения следующей модели? - PullRequest
0 голосов
/ 13 ноября 2018

Я пытался решить следующую проблему с дизайном модели Django:

Основным объектом здесь является объект Task.

Каждая задача состоит из (среди прочего) следующих полей:

  • 1 вступление, состоящее из 0 или более инструкцийWindiws
  • 1 Outro, состоящий из 0 или более команд Windows
  • Число (1 или более) блоков, каждое из которых состоит из 0 или более окон InstructionWindows.

Окно инструкции - это текстовое поле, содержащее HTML. Виджет для InstructionWindow может быть CKEditor.

Теперь я хотел бы, чтобы представление изменения задач администратора включало виджет для каждого из трех вышеупомянутых полей, каждое из которых состоит из TabularInline, где пользователь может добавлять, редактировать или удалять InstructionWindows для каждого поля (или блоков InstructionWindows).

Я боролся с ArrayFields, ForeignKeys, промежуточными объектами и т. Д., Но я не вижу элегантного способа решения головоломки.

ArrayFields кажутся пригодными для использования, но, кажется, нет полезного виджета. Более того, для инструкций Blocks это подразумевает использование Array of Arrays.

Будем весьма благодарны за любые предложения, указывающие мне правильное направление!

Джорис

...