Возможность динамического добавления/редактирования/удаления полей формы пользователями?
Я работаю над проектом, в котором требуется базовая форма + шаблон для каждого пользователя, основанный на простой модели, такой как...
class FloorPlan(models.Model):
user = models.ForeignKey(account)
stories = models.IntegerField()
bathrooms = models.IntegerField()
sqft = models.IntegerField()
Я знаю, что JS будет необходим, чтобы сделать это динамичным.
Таким образом, у каждого пользователя будет базовая форма и представление, которое отображает только эти 3 поля. Теперь я также хочу, чтобы эта форма была настраиваемой, чтобы пользователь мог добавлять любые дополнительные поля, или удалять поля, которые не используются. Возможно, они добавят информацию о заднем дворе, бассейне и т.д.
Я наткнулся на это приложение,
https://github.com/askvortsov1/dynamic-django-forms
но, похоже, не соответствует тому, что мне нужно.
Я думал добавить дополнительное поле extra_field=models.ForeignKey(ExtraField)
в модель FloorPlan
и сделать его m2m, а в модели ExtraField
просто хранить новые поля, которые пользователь хочет создать. Но с точки зрения дизайна, не думаю, что это будет лучше, чем позволить каждому пользователю наводнять БД?
Я искал вокруг, чтобы найти, возможно, библиотеку JS тоже.
Действительно просто ищу совета, если кто-то создал что-то подобное, просто ищу указатели в правильном направлении.
Заранее спасибо!