Генерируемое пользователем поле множественного выбора Django

Я ищу способ, чтобы поле множественного выбора заполнялось вариантами, сделанными пользователем. Например, они могут иметь следующие 3 варианта: Да, Нет, Не уверен. Мне нужен способ перевести это в модель.

Я понимаю, что это можно сделать с заранее определенными опциями, используя CharField или ChoiceField, но я не видел ничего с "динамическими" данными, такими как данные, созданные пользователем.

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

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

Вы не можете применить выбор пользователя к таблице БД. Однако вы можете хранить выбор пользователя где-нибудь, например, в профиле пользователя, и использовать его в динамически создаваемой форме с полем ChoiceField для ограничения того, что он может поместить в определенный столбец базы данных / поле модели.

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

Вернуться на верх