Example #1
0
    def update(self, instance, validated_data):

        
        mascota = instance.mascota
        mascota_data = validated_data.pop('mascota')
            
        mascota.nombre=mascota_data.pop('nombre')
        mascota.raza=mascota_data.pop('raza')
        mascota.tipo=mascota_data.pop('tipo')
        mascota.sexo=mascota_data.pop('sexo')
        mascota.edad=mascota_data.pop('edad')
        mascota.tamanio=mascota_data.pop('tamanio')
        mascota.compatible_chicos=mascota_data.pop('compatible_chicos')
        mascota.medicacion=mascota_data.pop('medicacion')
  
        mascota.save()
           
        instance.usuario=validated_data.pop('usuario')
        instance.aviso=validated_data.pop('aviso')
        instance.en_transito=validated_data.pop('en_transito')
        instance.fecha_publicacion=validated_data.pop('fecha_publicacion')
        instance.fecha_concretada=validated_data.pop('fecha_concretada')
        instance.estado=validated_data.pop('estado')
        instance.latitud=validated_data.pop('latitud')
        instance.longitud=validated_data.pop('longitud')
        instance.descripcion=validated_data.pop('descripcion')
            
        instance.save()

        multimedia_array = MultimediaMascota.objects.filter(id_publicacion=instance.id)
               
        for multimedia_viejo in multimedia_array:
            multimedia_viejo.delete()
 
        for multimedia_obj in validated_data['multimedia']:
            multimedia = MultimediaMascota(tipo=multimedia_obj.pop('tipo'),url=multimedia_obj.pop('url'),orden=multimedia_obj.pop('orden'))
            multimedia.id_publicacion = instance
            multimedia.save()

        return instance
Example #2
0
    def create(self, validated_data):

        mascota_data = validated_data.pop('mascota')

        mascota_obj = Mascota(nombre=mascota_data.pop('nombre'), raza=mascota_data.pop('raza'), tipo=mascota_data.pop('tipo'), sexo=mascota_data.pop('sexo'),
                              edad=mascota_data.pop('edad'), tamanio=mascota_data.pop('tamanio'), compatible_chicos=mascota_data.pop('compatible_chicos'), 
                              medicacion=mascota_data.pop('medicacion'))
        mascota_obj.save()
   
        publicacion = Publicacion(usuario=validated_data.pop('usuario'), 
            aviso=validated_data.pop('aviso'),  en_transito=validated_data.pop('en_transito'),fecha_publicacion=validated_data.pop('fecha_publicacion'),
            fecha_concretada=validated_data.pop('fecha_concretada'),estado=validated_data.pop('estado'), latitud=validated_data.pop('latitud'), 
            longitud=validated_data.pop('longitud'), descripcion=validated_data.pop('descripcion'))
        publicacion.mascota = mascota_obj

        publicacion.save()
       
        for multimedia_obj in validated_data.pop('multimedia'):
            multimedia = MultimediaMascota(tipo=multimedia_obj.pop('tipo'),url=multimedia_obj.pop('url'),orden=multimedia_obj.pop('orden') )
            multimedia.id_publicacion = publicacion
            multimedia.save()
                
        return publicacion