Суть в том чтобы вьюха получила выбранное значение - вернула html с аргументом.
html
<form name="doc_tip" action="/tips/" method="post">{% csrf_token %} <p><select> <optgroup label="Договорная"> <option value="r1" name="r1" id="r1">Доходный</option> <option value="r2" name="r2" id="r2">Расходный</option> <option value="r3" name="r3" id="r3">Разное</option> </optgroup> <optgroup label="Инф-справоч"> <option value="t1" name="t1" id="t1">СЗ</option> <option value="t2" name="t2" id="t2">Заявка</option> <option value="t3" name="t3" id="t3">Разное</option> </optgroup> </select></p> <p> <input type="radio" value="r11">dohod <br> <input type="radio" value="r22">rashod </p> <p><input type="submit" value="Send"></p> </form>
def tips(request): args = {} args.update(csrf(request)) args['trueq_create'] = 1 args['trueqq'] = 1 args['username'] = auth.get_user(request).username if request.method == 'POST': if 'r1' in request.POST: args['trueq_tips1'] = 1 return render_to_response('create_docsup.html', args, context_instance=RequestContext(request)) elif 'r2' in request.POST: args['trueq_tips2'] = 1 return render_to_response('create_docsup.html', args, context_instance=RequestContext(request)) elif 'r11' in request.POST: args['trueq_tips1'] = 1 return render_to_response('create_docsup.html', args, context_instance=RequestContext(request)) elif 'r22' in request.POST: args['trueq_tips2'] = 1 return render_to_response('create_docsup.html', args, context_instance=RequestContext(request)) else: return redirect('/')