def predmeti_razredi_dijaki_ocene_dodaj(request, predmet, razred, dijak, dogodek=None): profesor = request.user_profile poucuje = get_object_or_404(profesor.poucuje, predmet=predmet, razred=razred) predmet = poucuje.predmet razred = poucuje.razred dijak = get_object_or_404(razred.dijaki_cached, id=dijak) dogodki = Dogodek.objects.filter(poucuje=poucuje) initial = { 'datum_pridobitve': datetime.today(), } if dogodek: dogodek = get_object_or_404(dogodki, id=dogodek) initial['dogodek'] = dogodek form = OcenaPoucujeForm(data=request.POST or None, initial=initial) form.fields['dogodek'].queryset = dogodki form.fields['dogodek'].label_from_instance = dogodek_label if form.is_valid(): ocena = form.save(commit=False) ocena.dijak = dijak ocena.poucuje = poucuje ocena.save() messages.info(request, u'Ocena je dodana.') return HttpResponseRedirect(reverse('profesor_predmeti_razredi_dijaki_ocene_ocena', args=[predmet.id, razred.id, dijak.id, ocena.id])) return locals()
def predmeti_razredi_dijaki_ocene_uredi(request, predmet, razred, dijak, ocena): profesor = request.user_profile poucuje = get_object_or_404(profesor.poucuje, predmet=predmet, razred=razred) predmet = poucuje.predmet razred = poucuje.razred dijak = get_object_or_404(razred.dijaki_cached, id=dijak) ocena = get_object_or_404(dijak.ocene_base, id=ocena) form = OcenaPoucujeForm(instance=ocena, data=request.POST or None) dogodki = Dogodek.objects.filter(poucuje=poucuje) form.fields['dogodek'].queryset = dogodki form.fields['dogodek'].label_from_instance = dogodek_label if form.is_valid(): ocena = form.save(commit=False) ocena.dijak = dijak ocena.poucuje = poucuje ocena.save() messages.info(request, u'Podatki o oceni so shranjeni.') return HttpResponseRedirect(reverse('profesor_predmeti_razredi_dijaki_ocene_ocena', args=[predmet.id, razred.id, dijak.id, ocena.id])) return locals()