The connection API is indeed convenient for that : metadata = QgsProviderRegistry.instance().providerMetadata('postgres') connection = metadata.findConnection("the postgis connection name") uri = QgsDataSourceUri(connection.uri())
Le sam. 9 janv. 2021 à 22:36, Alessandro Pasotti <apaso...@gmail.com> a écrit : > Hi Bo, > > you may have a look to > > https://qgis.org/pyqgis/master/core/QgsProviderRegistry.html?highlight=decodeuri#qgis.core.QgsProviderRegistry.decodeUri > and encodeUri. > > Or better: the connections API > https://qgis.org/pyqgis/master/core/QgsAbstractProviderConnection.html > > > > On Sat, Jan 9, 2021 at 2:03 PM Bo Victor Thomsen > <bo.victor.thom...@gmail.com> wrote: > > > > Ok, this has me stumped. > > > > I know, that I can generate a database URI like this (example from > cookbook): > > > > uri = QgsDataSourceUri() > > # set host name, port, database name, username and password > > uri.setConnection("localhost", "5432", "dbname", "johny", "xxx") > > # set database schema, table name, geometry column and optionally > > # subset (WHERE clause) > > uri.setDataSource("public", "roads", "the_geom", "cityid = 2643") > > > > vlayer = QgsVectorLayer(uri.uri(False), "layer name you like", > "postgres") > > > > > > But I would like to use information from a already defined Datasource > connection from the Datamanager dialog. > > > > I suspect, that there must be a > "QgsSettingsConvertToUri_or_whatever_it_is_called()" function that uses a > QGS settings address (ex. like "/PostgreSQL/connections/MyDatabase" for a > Postgresql database connection) as input and automatically convert the > settings values to a URI string. > > > > Is there anyone, that can point me in the right direction ? > > > > -- > > > > Med venlig hilsen / Kind regards > > > > Bo Victor Thomsen > > > > _______________________________________________ > > QGIS-Developer mailing list > > QGIS-Developer@lists.osgeo.org > > List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer > > Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer > > > > -- > Alessandro Pasotti > QCooperative: www.qcooperative.net > ItOpen: www.itopen.it > _______________________________________________ > QGIS-Developer mailing list > QGIS-Developer@lists.osgeo.org > List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer > Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer >
_______________________________________________ QGIS-Developer mailing list QGIS-Developer@lists.osgeo.org List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer