Beispiel #1
0
	def post(self, request):
		status = 'ok'
		error = [0, '']
		if request.user.is_authenticated():
			id = request.POST.get('id', '')
			name = request.POST.get('name', '')
			lastname = request.POST.get('lastname', '')
			grade = request.POST.get('grade', '')
			group = request.POST.get('group', '')
			note = request.POST.get('note', '')

			try:
				with transaction.atomic():
					gra = Grade.objects.get(id=grade)
					gro = Group.objects.get(id=group)
					try:
						if id != '' and id != 0 and id != '0':
							s = MStudent.objects.get(id=id)
						else:
							raise ObjectDoesNotExist
					except ObjectDoesNotExist as e:
						s = MStudent(name=name, lastname=lastname, grade=gra, group=gro, note=note, user=request.user)
						s.save()
					else:
						s.name = name
						s.lastname = lastname
						s.grade = gra
						s.group = gro
						s.note = note
						s.user = request.user
						s.save()
			except IntegrityError as e:
				status = 'fail'
				error = e.args
			except:
				status = 'fail'
				error = [100, 'error inesperado']
		else:
			status = 'fail'
			error = [401, 'permiso denegado']
		return HttpResponse(json.dumps({'status':status, 'error':error}), content_type='application/json')