Example #1
0
 def editar_cancion(self, cancion_id, titulo, minutos, segundos, compositor,
                    interpretes):
     busqueda = session.query(Cancion).filter(
         Cancion.titulo == titulo, Cancion.id != cancion_id).all()
     if len(busqueda) == 0:
         cancion = session.query(Cancion).filter(
             Cancion.id == cancion_id).first()
         cancion.titulo = titulo
         cancion.minutos = minutos
         cancion.segundos = segundos
         cancion.compositor = compositor
         for item in interpretes:
             if item["id"] == "n":
                 interprete = Interprete(
                     nombre=item["nombre"],
                     texto_curiosidades=item["texto_curiosidades"],
                     cancion=cancion.id)
                 session.add(interprete)
                 cancion.interpretes.append(interprete)
             else:
                 self.editar_interprete(item["id"], item["nombre"],
                                        item["texto_curiosidades"])
         session.commit()
         return True
     else:
         return False
Example #2
0
 def agregar_album(self, titulo, anio, descripcion, medio):
     busqueda = session.query(Album).filter(Album.titulo == titulo).all()
     if len(busqueda) == 0:
         album = Album(titulo=titulo, ano=anio, descripcion=descripcion, medio=medio)
         session.add(album)
         session.commit()
         return True
     else:
         return False
Example #3
0
 def agregar_interprete(self, nombre, texto_curiosidades, cancion_id):
     busqueda = session.query(Interprete).filter(
         Interprete.nombre == nombre).all()
     if len(busqueda) == 0:
         if cancion_id > 0:
             nuevoInterprete = Interprete(
                 nombre=nombre,
                 texto_curiosidades=texto_curiosidades,
                 cancion=cancion_id)
         else:
             nuevoInterprete = Interprete(
                 nombre=nombre, texto_curiosidades=texto_curiosidades)
         session.add(nuevoInterprete)
         session.commit()
         return True
     else:
         return False
Example #4
0
 def agregar_cancion(self, titulo, minutos, segundos, compositor, album_id,
                     interpretes):
     interpretesCancion = []
     if len(interpretes) == 0:
         return False
     else:
         if album_id > 0:
             busqueda = session.query(Cancion).filter(
                 Cancion.albumes.any(Album.id.in_([album_id])),
                 Cancion.titulo == titulo).all()
             if len(busqueda) == 0:
                 album = session.query(Album).filter(
                     Album.id == album_id).first()
                 nuevaCancion = Cancion(titulo=titulo,
                                        minutos=minutos,
                                        segundos=segundos,
                                        compositor=compositor,
                                        albumes=[album])
                 for item in interpretes:
                     interprete = Interprete(
                         nombre=item["nombre"],
                         texto_curiosidades=item["texto_curiosidades"],
                         cancion=nuevaCancion.id)
                     session.add(interprete)
                     interpretesCancion.append(interprete)
                 nuevaCancion.interpretes = interpretesCancion
                 session.add(nuevaCancion)
                 session.commit()
                 return True
             else:
                 return False
         else:
             nuevaCancion = Cancion(titulo=titulo,
                                    minutos=minutos,
                                    segundos=segundos,
                                    compositor=compositor)
             for item in interpretes:
                 interprete = Interprete(
                     nombre=item["nombre"],
                     texto_curiosidades=item["texto_curiosidades"],
                     cancion=nuevaCancion.id)
                 session.add(interprete)
                 interpretesCancion.append(interprete)
             nuevaCancion.interpretes = interpretesCancion
             session.add(nuevaCancion)
             session.commit()
             return True