Как представить последовательность форм Джанго в порядке? - PullRequest
0 голосов
/ 09 марта 2012

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

В настоящее время я храню список объектов формы (не экземпляров) и создаю экземпляр каждой формыкак это нужно представить.(например, formobject = formslist[3]; form = formobject();).

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

Следующим шагом будет введение некоторого пропуска-Логический, поэтому жесткая последовательность форм не идеальна.

Может быть, это поможет.Это то, что я имею в виду, используя функцию getnext.Он работает от первой формы ко второй, но затем не служит третьей форме:

def showform(request):
    if 'formobj' not in locals():
        formobj = StartForm

    if request.method == 'POST': # If the form has been submitted...
        form = formobj(request.POST)

        if form.is_valid():
            try:
                form.save()
            except:
                pass
            cd = form.cleaned_data
            formobj = form.get_next()
            form = formobj()
            if formobj == 'done':
                render_to_response('doneform.html', context_instance=RequestContext(request))
            else:
                form = formobj()
    else:
        form = formobj()

    return render_to_response('template.html', {'form': form, 'requestpath': request.get_full_path()}, context_instance=RequestContext(request))

1 Ответ

3 голосов
/ 09 марта 2012

Рассматривали ли вы это для сохранения данных во время шагов мастера форм

Использование FormWizard и сохранение данных форм между ними до завершения всего процесса?

В этом посте также упоминается приложение под названием django-merlin, которое может делать то, что вам нужно.Я лично этим не пользовался.

Редактировать

Вот еще один пост, который может быть вам полезен Django - пошаговый мастер создания форм

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