Ver Mensaje Individual
  #1  
Antiguo 02-03-2012
Gregoqm Gregoqm is offline
Registrado
NULL
 
Registrado: feb 2012
Posts: 6
Reputación: 0
Gregoqm Va por buen camino
problemas al modificar datos

Hola de nuevo, ahi va mi problemilla tengo un usuario q tiene varios viajes que ha creado el, y cada viaje creado tiene le opcion de modificar los datos introducidos,
esto lo hago con la vista modificarviaje, lo que pasa es q cuando le doy a la opcion de modificar del viaje me sale el formulario pero con los datos de otro viaje, y da igual
al viaje que le de, que el formulario me sale relleno con los mismos datos siempre, es q no se q poner en el for o hacerlo sin for. Muchas gracias. Un saludo.

Código:
def modificarviaje(request, pID='0'):
	
	f=ViajeForm()
	message=''
	p = get_object_or_404(RegistroUsuario, pk=pID)
	viajes=Viaje.objects.filter(usuarioViaje=p)
	for v in viajes:
	  
            #¿?¿?¿?¿???¿¿?¿?¿?¿?¿

	  if request.method == 'GET':
	        f = ViajeForm(instance=v)
	        message = 'Ahora puedes modificar tu viaje %s ' % p.username
          if request.method == 'POST':
	        if request.POST['submit'] == 'Actualizar':
	            message = 'Tu viaje se ha actualizado %s.' % p.username
	            f = ViajeForm(request.POST.copy(), instance=v)	
                    if f.is_valid():
	                try:
	                    f.save()
	                    message += '  OK'
			    return HttpResponseRedirect('/crearviaje/%d/' % p.id)
                        except:
 	                   message = 'Error al actualizar'
                    else:
	                message += ' Invalido'
        
	return render_to_response('modificar_viaje.html',{'p':p,'cForm':f,'message': message,'v':v})




models.py




class RegistroUsuario(User):
    
    comentario=models.TextField(blank=True)
    imagen=models.ImageField(upload_to='usuarios/',blank=True)
    coche=models.CharField(max_length=2,choices=SINO_CHOICES)
    animales=models.CharField(max_length=2,choices=SINO_CHOICES)
    fumador=models.CharField(max_length=2,choices=SINO_CHOICES)
    musica=models.CharField(max_length=2,choices=SINO_CHOICES)
    conversacion=models.CharField(max_length=2,choices=SINO_CHOICES)

  
class Viaje(models.Model):
    usuarioViaje=models.ForeignKey(RegistroUsuario, related_name='+')
    origen=models.CharField(max_length=50)
    destino=models.CharField(max_length=50)
    fechaPublicacion=models.DateField(auto_now_add=True)
    fechaViaje=models.DateTimeField()
    comentarios=models.TextField()
    ofedem=models.CharField(max_length=3,choices=OFDEM_CHOICES)
    idavue=models.CharField(max_length=3,choices=IDAVUE_CHOICES)
    plazasLibres=models.BooleanField()
    precio=models.PositiveSmallIntegerField()
    equipaje=models.CharField(max_length=3,choices=EQUIPAJE_CHOICES)
Responder Con Cita