On 09-12-14 16:41, Germán Carrillo wrote: > Hi Richard, > > thanks a lot for your response. However, I think we aren't talking about > the same :) > I understand this thread was opened to ask about how to open a PostGIS > Layer from the OS (say GNU/Linux) command line at QGIS startup.
ah, sorry sorry :-( well, I take this as a challenge... (short version: go to the end, either use a vrt file or a qgs file) looking into the code: https://github.com/qgis/QGIS/blob/master/src/app/qgisapp.cpp#L4206 it looks like you can only use ogr provider for this... here: http://docs.qgis.org/testing/en/docs/pyqgis_developer_cookbook/loadlayer.html there is an example to use a MySQL uri... so I tried that one first. All is based on ogr, so we need the ogr driver: http://www.gdal.org/drv_pg.html tried stuff like: PG:'dbname=bag host=localhost port=5432 user=geo password=xxx sslmode=disable key=gid estimatedmetadata=true srid=28992 type=MULTIPOLYGON table="bag8mrt2014"."provincie" (geovlak) sql=' but all that I got working was a simple: ogrinfo -ro PG:'host=localhost user=geo password=gwwvgeo dbname=bag sslmode=disable' but using that kind of uri's did not make QGIS load, it kept showing: Unable to load /tmp/PG:host=localhost user=geo password=xxx dbname=bag sslmode=disable apparently QGIS ALWAYS prepends the basepath (/tmp for me) in front of the 'filename'. It has to be a real file ?? THEN: ok, so it has to be ogr AND a file... There is gdal's Virtual Format: http://www.gdal.org/drv_vrt.html so with some trial and error I prepared the following vrt file, for exact the same data as the earlier email: <OGRVRTDataSource> <OGRVRTLayer name="test"> <SrcDataSource>PG:host=localhost user=geo password=*** dbname=bag sslmode=disable</SrcDataSource> <SrcSQL>select * from bag8mrt2014.provincie</SrcSQL> <LayerSRS>epsg:28992</LayerSRS> </OGRVRTLayer> </OGRVRTDataSource> saved it as mypgconnection.vrt, and NOW I can load it with: qgis mypgconnection.vrt \o/ another option, is to create a qgs project file with that postgresql connection and fire up qgis with that one qgis mypgproject.qgs you could maybe create the qgs file dynamically to have your schema/table names in place ok, it's all a little hacking, but hopefully of use :-) Regards, Richard Duivenvoorde _______________________________________________ Qgis-user mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/qgis-user
