Les objets de table dans SQLAlchemy ont deux rôles. Ils peuvent être utilisés pour émettre des commandes DDL pour créer la table dans la base de données. Mais leur objectif principal est de décrire les colonnes et les types de données tabulaires qui peuvent être sélectionnées et insérées.
Si vous souhaitez uniquement sélectionner, une vue ressemble à SQLAlchemy exactement comme une table normale. Il suffit de décrire la vue comme un tableau avec les colonnes qui vous intéressent (vous n'avez même pas besoin de décrire toutes les colonnes). Si vous souhaitez utiliser l'ORM, vous devrez déclarer pour SQLAlchemy qu'une combinaison de colonnes peut être utilisée comme clé primaire (tout ce qui est unique fera l'affaire). Déclarer certaines colonnes en tant que clés étrangères facilitera également la configuration des relations. Si vous n'émettez pas de création pour cet objet Table, il s'agit simplement de métadonnées pour que SQLAlchemy sache comment interroger la base de données.
Si vous souhaitez également insérer dans la vue, vous devrez créer des règles ou des déclencheurs PostgreSQL sur la vue qui redirigent les écritures vers l'emplacement correct. Je ne connais pas de bonne recette d'utilisation pour rediriger les écritures du côté Python.