Дизайнерские решения для нескольких форм Django для полей формы POST - PullRequest
0 голосов
/ 05 июня 2019

У меня есть страница шаблона для нескольких форм. Пользователь выбирает форму выбора, и она отображается. После того, как форма заполнена, пользователь отправляет ее, и данные передаются в POST. На данный момент в коде реализовано большое количество реализаций if / else, которые связывают форму с POST.

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

Моя текущая реализация следует этой схеме ...

Моя функция выбора формы

if type is FormA
    return formA() //render
elif type is FormB
    return formB()
...

Моя функция заполнения формы

if type is FormA
    return formA(request.POST)
elif type is FormB
    return formB(request.POST, request.FILES)
...

Мои формы основаны на классах в моем models.py.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...