def crear_director(self):
     """
     Ingresa al director a la base de datos
     """
     self.obtener_datos()
     if (
         self.listo == True and Modelo_director.checkea_director(self.nombre) == False
     ):  # si los campos obligatorios tienen datos, se crea el director
         print("Creando nuevo director ...")
         # crear_director(nombre, pais, fecha_nacimiento,fecha_defuncion):
         Modelo_director.crear_director(
             self.nombre,
             self.pais,
             self.nacimiento,
             self.defuncion,
             "Director/img/" + self.nombre.replace(" ", "_") + ".jpg",
         )
         self.ui.foto_label.pixmap().save(
             "Director/img/" + self.nombre.replace(" ", "_") + ".jpg", "jpg"
         )  # guarda la imagen que se selecciono a la carpeta "img"
         self.limpiar()
         self.close()
     else:  # si falta algun campo obligatorio, no se creara el nuevo director
         if len(self.nombre) > 0:
             QtGui.QMessageBox.critical(
                 self,
                 "Director Existente",
                 "Error:\nEL director que intenta agregar (" + self.nombre + "), ya existe en la base de datos",
             )
         else:
             QtGui.QMessageBox.critical(
                 self,
                 "Faltan campos obligatorios",
                 'Error:\nLos campos "nombre" y "fecha de nacimiento" son obligatorios',
             )
 def elimina(self):
     """
     Elimina un director de la base de datos
     """
     index = self.ui.grilla.currentIndex()
     data = self.ui.grilla.model()
     dire = data.item(index.row(), 0).dire
     iD = str(dire["id"])
     resp = QtGui.QMessageBox.question(
         self,
         "Pregunta",
         "Desea realmente eliminar el director seleccionado?",
         QtGui.QMessageBox.Ok,
         QtGui.QMessageBox.No,
     )
     if resp == QtGui.QMessageBox.Ok:
         Modelo_director.borrar(iD)
         self.cargar_directores()
 def sum_peliculas(self, id_p):
     """
     recorre la query como diccionario para luego contar los actores
     """
     c = 0
     directores = Modelo_director.contar_peliculas(id_p)
     for i, peli in enumerate(directores):
         c = c + 1
     return c
    def cargar_directores(self):
        """
        Carga directores de la base de datos
        """
        directores = Modelo_director.obtener_directores()
        filas = len(directores)
        data = QtGui.QStandardItemModel(filas, len(self.table_columns))
        self.ui.grilla.setModel(data)
        self.ui.grilla.horizontalHeader().setResizeMode(0, self.ui.grilla.horizontalHeader().Stretch)

        for col, h in enumerate(self.table_columns):
            data.setHeaderData(col, QtCore.Qt.Horizontal, h[0])
            self.ui.grilla.setColumnWidth(col, h[1])

        for i, dire in enumerate(directores):
            filas = [dire["id"], dire["nombre"], dire["pais"], dire["fecha_nacimiento"], dire["fecha_defuncion"]]
            for j, field in enumerate(filas):
                index = data.index(i, j, QtCore.QModelIndex())
                data.setData(index, field)
            # Parametros ocultos
            data.item(i).dire = dire