def PacienteNuevo(request): form = UsuarioForm(request.POST, request.FILES) if form.is_valid(): ''' Si no hay errores en el formulario, sigue el siguiente flujo: 1.-Crea un nuevo usuario 2.-Guarda los valores del formulario en ese usuario 3.-Crea un nuevo User 4.-Lo inicializa con los valores del form 5.-Guarda el User 6.-Obtiene el rol de paciente en un objeto 7.-Enlaza el nuevo user con el Usuario antes creado, y Con el Rol 8.-Crea un nuevo Paciente 9.-Lo enlaza con el nuevo usuario 10.-Guarda el paciente ''' usuario = form.save(commit=False) user = User() paciente = Paciente() user.username = form.cleaned_data['cedula'] password = generar_password() user.set_password(password) user.email = form.cleaned_data['email'] user.save() rol = Rol.objects.filter(tipo='paciente').first() usuario.usuario = user usuario.rol = rol usuario.foto = form.cleaned_data['foto'] usuario.save() paciente.usuario = usuario paciente.n_hijos = form.cleaned_data['n_hijos'] paciente.motivo_consulta = form.cleaned_data['motivo_consulta'] paciente.observaciones = form.cleaned_data['observaciones'] paciente.save() enviar_password_email(user.email, user.username, password) # pacientes = Paciente.objects.all() # return render(request, 'paciente/index.html', {'pacientes': pacientes}) me.add_message(request, me.SUCCESS, 'Paciente creado con exito!') return redirect('paciente:index') else: print form._errors context = { "form": form, } return render(request, 'paciente/form_paciente.html', context)
def testIngreso(self): cedula = "0936934468" nombre = "Carlos" apellido = "Manosalvas" direccion = "Calle 3" telefono = "2365897" ocupacion = "Student" genero = "M" edad = 25 fecha = 27 / 03 / 2005 user = User() user.username = cedula user.set_password("p.123456") user.save() usuario = Usuario() usuario.usuario = user rol = Rol.objects.get(tipo='paciente') usuario.rol = rol usuario.nombre = nombre usuario.apellido = apellido usuario.cedula = cedula usuario.genero = genero usuario.edad = edad usuario.telefono = telefono usuario.direccion = direccion usuario.ocupacion = ocupacion usuario.fecha = fecha usuario.save() paciente = Paciente() paciente.usuario = usuario paciente.save() user1 = User.objects.get(username=cedula) user1.delete() try: x = User.objects.get(username=cedula) except User.DoesNotExist: x = None try: y = Usuario.objects.get(cedula=cedula) except Usuario.DoesNotExist: y = None self.assertEquals(x, None) self.assertEquals(y, None)
def setUp(self): User.objects.create_user(username='******', password='******') #self.client.login(username='******', password='******') s = Rol.objects.create(tipo='paciente') s.save() p = Rol.objects.create(tipo='fisioterapista') p.save() cedula = "0936934468" nombre = "Carlos" apellido = "Manosalvas" direccion = "Calle 3" telefono = "2365897" ocupacion = "Student" genero = "M" edad = 25 fecha = 27 / 03 / 2005 user = User() user.username = cedula user.set_password("p.123456") user.save() usuario = Usuario() usuario.usuario = user rol = Rol.objects.get(tipo='paciente') usuario.rol = rol usuario.nombre = nombre usuario.apellido = apellido usuario.cedula = cedula usuario.genero = genero usuario.edad = edad usuario.telefono = telefono usuario.direccion = direccion usuario.ocupacion = ocupacion usuario.fecha = fecha usuario.save() paciente = Paciente() paciente.usuario = usuario paciente.save()