@@ -50,20 +50,43 @@ print(connection.tables("un_schema"))
50
50
# permettant de faire une source de données pour une QgsVectorLayer
51
51
print (connection.tableUri(" schema" , " table" ))
52
52
53
+ ```
54
+
55
+ Afficher une table sans géométrie :
56
+
57
+ ``` python
53
58
layer = QgsVectorLayer(connection.tableUri(" schema" , " table" ), " Ma table" , " postgres" )
54
59
layer.loadDefaultStyle() # Si un style par défaut existe dans votre base PostgreSQL, avec la table layer_styles
55
60
QgsProject.instance().addMapLayer(layer)
61
+ ```
62
+
63
+ Afficher une table avec géométrie en partant de ` QgsDataSourceUri ` :
64
+ ``` python
65
+ uri = QgsDataSourceUri(connection.uri())
66
+ uri.setSchema(' schema' )
67
+ uri.setTable(' table' )
68
+ uri.setKeyColumn(' uid' )
56
69
57
- # Charger le résultat d'un SELECT
70
+ # Avec une geom si besoin
71
+ uri.setGeometryColumn(' geom' )
72
+
73
+ layer = QgsVectorLayer(uri.uri(), ' Ma table' , ' postgres' )
74
+ QgsProject.instance().addMapLayer(layer)
75
+ ```
76
+
77
+ Afficher le résultat d'un ` SELECT ` :
78
+
79
+ ``` python
58
80
# Notons l'usage des parenthèses autour du SELECT
59
81
uri = QgsDataSourceUri(connection.uri())
60
82
uri.setTable(' (SELECT * FROM schema.table)' )
61
83
uri.setKeyColumn(' uid' )
62
84
63
85
# Avec une geom si besoin
64
- uri.setGeomColumn (' geom' )
86
+ uri.setGeometryColumn (' geom' )
65
87
66
88
layer = QgsVectorLayer(uri.uri(), ' Requête SELECT' , ' postgres' )
89
+ QgsProject.instance().addMapLayer(layer)
67
90
```
68
91
69
92
!!! tip "Exemple d'extension"
0 commit comments