Beispiel #1
0
def atualizar_questao(request, pk):
    questao = QuestaoObjetiva.objects.get(id = pk)
    if (request.method == 'POST'):
        form = QuestaoObjetivaForm(request.POST)
        formset = AlternativaObjetivaFormSet(request.POST)
        if form.is_valid() and formset.is_valid(): 
            query = QuestaoObjetiva.objects.get(id = pk)
            query.nome = form.cleaned_data['nome']
            query.enunciado = form.cleaned_data['enunciado']
            query.nivel_estatico = form.cleaned_data['nivel_estatico']
            query.tags = form.cleaned_data['tags']
            query.save()
            AlternativaQuestao.objects.filter(questao = query).delete()
            for form_dict in formset.cleaned_data:
                if form_dict:
                    alternativa = AlternativaQuestao()
                    alternativa.questao = query
                    alternativa.alternativa = form_dict['alternativa']
                    alternativa.valor = form_dict['valor']
                    alternativa.save()
            return HttpResponseRedirect('/questao/detail/%s/%s' % (questao.uid(), questao.id))
    else:
        form = QuestaoObjetivaForm(initial={'nome':questao.nome, 'enunciado':questao.enunciado, 
                                        'criador':questao.criador, 'data_criacao':questao.data_criacao, 
                                        'nivel_estatico':questao.nivel_estatico, 'nivel_dinamico':questao.nivel_dinamico, 
                                        'questionarios':questao.questionarios, 'tags':questao.get_tags_as_string})

        queryset= AlternativaQuestao.objects.filter(questao = questao).values()
        formset = AlternativaObjetivaFormSet(initial=queryset)
    return render_to_response('private/questao/objetiva/show.html', {'questao':questao, 'form':form, 'formset':formset}, context_instance=RequestContext(request))
Beispiel #2
0
def criar_questao(request):
    if request.method == 'POST':
        form = QuestaoObjetivaForm(request.POST)
        formset = AlternativaObjetivaFormSet(request.POST)
        if form.is_valid() and formset.is_valid():
            questao = form.save(commit=False)
            questao.criador = request.user
            questao.save()
            questao.tags = form.cleaned_data['tags']
            for form_dict in formset.cleaned_data:
                if form_dict:
                    alternativa = AlternativaQuestao()
                    alternativa.questao = questao
                    alternativa.alternativa = form_dict['alternativa']
                    alternativa.valor = form_dict['valor']
                    alternativa.save()
            return HttpResponseRedirect('/questoes')
    else:
        form = QuestaoObjetivaForm()
        formset = AlternativaObjetivaFormSet()
        
    return render_to_response('private/questao/objetiva/form.html', {'form':form, 'formset':formset}, 
                                      context_instance=RequestContext(request))