def save(self): response = { 'success': True, 'error': None, 'data': 'Todo bien' } try: id = self.request.user.id or 0 if not Cuestionario.objects.filter(usuario=id).exists(): cuestionario = self.request.session.get('cuestionario', dict()) cuestionario.update(self.request.POST) cuestionario['usuario'] = id cuestionario['proyecto'] = self.request.user.proyecto or 'NINGUNO' #aqui guardar for field, v in cuestionario.items(): if field.startswith('parte1'): cuestionario[field] = v[0] if field.startswith('parte2'): cuestionario[field] = v[0] elif field.startswith('parte3'): cuestionario[field] = int(v[0]) cuestionario['parte1_tiempo'] = self.request.session.get('parte1_tiempo') form = CuestionarioForm(cuestionario) form.save() if self.request.session.has_key('cuestionario'): del self.request.session['cuestionario'] else: response['data'] = 'Usted ya ha completado el cuestionario' except Exception as e: response['success'] = False response['error'] = True response['data'] = e.message return response