Si planea usar widgets y modelos de Qt, PySide (PyQt o simplemente Qt/C++) es el camino a seguir.
Con psycopg2
desnudo tendrá mucho más trabajo por hacer y deberá implementar su propio modelo para aprovechar las clases de modelo/vista de Qt. Esta simplemente no es la forma Qt de hacer las cosas. PySide (y PyQt) tienen sus propios medios para conectarse a una base de datos compatible, no hay necesidad de adaptadores de base de datos Python puros como psycopg2
. Utiliza la biblioteca libqt4-sql subyacente (C++) y los complementos instalados (QPSQL, QMYSQL, QSQLITE, etc.).
Esencialmente necesitas:
- Conéctese a una base de datos.
- Crear una instancia de un modelo (QSqlQueryModel, QSqlTableModel o una clase derivada personalizada de QAbstractTableModel)
- Adjunte ese modelo a una vista (es decir, QTableView).
Eche un vistazo a la Documentación de PySide QtSql y la documentación de PyQt para hacerse una idea. En su mayoría son compatibles/intercambiables, pero de un vistazo veo que la documentación de PyQt parece más completa.
EDITAR (después de su edición): Una aplicación Qt GUI requiere un bucle de eventos para ejecutarse, y eso lo proporciona una QApplication
instancia. Antes de continuar con los detalles de su aplicación, tómese el tiempo para comprender primero algunos conceptos básicos. Aquí hay una buena Guía de introducción a PyQt
.