django表单上的多个选项提交

时间:2012-04-01 22:32:03

标签: django django-forms django-views

我希望在视图中提交表单后为用户提供多个多项选择。

例如...保存并添加另一个..或保存并返回仪表板。

有没有办法可以告诉我的观点,如果输入值是1,那么这样做..还是做另一件事?

//小鼠

1 个答案:

答案 0 :(得分:2)

当然。这是一个简短的(未经测试的)示例,说明如何有条件地将用户重定向到另一个页面或从另一个视图中调用视图并将其返回

from django.shortcut import render
from django.http import HttpResponseRedirect
def option_one_view(request):
    return render('option_one_template.html', ...)

def option_two_view(request):   
    return render('option_two_template.html', ...)

def main_view(request):
    if request.method == POST:
       form = MyForm(request.POST)
        if form.is_valid():
            if form.cleaned_data['example_field'] == 1:
                return option_one_view(request)
            else if ...:
                return option_two_view(request)
            else:
                return HttpRedirect("http://...")
    ...
    return render('main_template.html', ...)