Django: Создание формы из элементов модели, где каждый элемент модели имеет несколько связанных с ним вопросов
Я хочу задавать пользователям несколько вопросов для каждого из списка элементов в модели Django.
В качестве наглядного примера: Предположим, я собираю данные о мнениях людей о фильмах о Гарри Поттере. Я хочу знать, смотрел ли кто-нибудь а) один из фильмов и б) какую оценку (из 10) он дал этому фильму.
Предположим, что мое приложение Django содержит 3 модели:
- Films - заполнение списка фильмов;
- Users - сведения о человеке, который ответил;
- Ответы - ответы для каждого пользователя. Здесь содержатся три столбца: UserID, FilmID, Rating. Он заполняется только в том случае, если пользователь поставил оценку фильму (т.е. нет пустых оценок) .
В таблице ниже показано, какой ответ я хотел бы получить: уточнение, смотрели ли они фильм, и их оценка из 10 баллов.
Film | Watched? | Rating |
---|---|---|
HP-1 | Y | 8 |
HP-2 | Y | 9 |
HP-3 | N | - |
HP-4 | N | - |
HP-5 | N | - |
HP-6 | Y | 7 |
HP-7 | N | - |
HP-8 | N | - |
HTML-форма будет иметь схожий вид: название фильма, флажок, указывающий, был ли он просмотрен, и поле рейтинга (выпадающее или целочисленное поле).
Таким образом, в таблицу Responses будут загружены следующие строки:
UserID | FilmID | Rating |
---|---|---|
1 | HP-1 | 8 |
1 | HP-2 | 9 |
1 | HP-6 | 7 |
Каким будет наилучший подход для создания такой формы с помощью Django?
Я изучил formsets и подобные методы, а также этот блог о inline formsets, но, похоже, не могу собрать все воедино, чтобы соответствовать тому, что мне нужно (мои знания о Django ограничены, имейте в виду).
Возможно, я иду совершенно неправильным путем, поэтому любая помощь будет оценена по достоинству. Спасибо.