@lilfungi

Как сгенерировать поля форм в django?

Я абсолютный новичок в django и пока плохо понимаю, как здесь все работает. Появилась задача - создать форму с множеством различных полей (1000+) из таблицы с описанием этих полей. Показалось, что прописывать их все вручную нерационально, и точно существует более простой и изящный способ.
В отдельном скрипте вытащила все необходимые данные из csv (test_fields - список словарей с необходимыми полями и их параметрами), импортировала, попыталась с помощью цикла и некоторых извращений сгенерировать необходимые поля в models.py:

test_names = []


class Test(models.Model):
    for field in test_fields:
        name = field['name']
        if field['type'] == 'text':
            globals()[name] = models.TextField(name, default=field['description'])
            test_names.append(name)

С помощью test_names планировала манипулировать полями в дальнейшем (эти имена необходимо сохранить в самой БД). По частям все работает адекватно, но сами поля не создаются и при миграции поднимается соответствующая ошибка.
  • Вопрос задан
  • 77 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы