Hi,

I don't know any way to do this, except for using a workaround.
But it will depend on your use-case.
Maybe using query layers, such as

QgsVectorLayer("table='(select * from <schema>.<table> <your conditions>)' service='<service>' key='<unique id column>'", "<table name>", "postgres")

can help ?

Regards,
Jacky



Le 09/08/2022 à 11:15, Johannes Kröger (WhereGroup) via QGIS-Developer a écrit :
Howdy!

I'd like to force a provider filter when a user adds a PostGIS layer and have it applied *before* any data is loaded. Setting it after the layer (and some of its big data) is loaded initially is not an option.

Is there a way to sneak in between "user clicked something in the GUI to load a table/query and QGIS will construct a QgsVectorLayer now" and "QGIS now talks to the PostGIS database to get the data for the new layer", maybe with a signal?

Something like a "layerAboutToBeLoaded" (like the opposite layerWillBeRemoved on https://qgis.org/pyqgis/master/core/QgsProject.html) basically. :o)

Cheers, Hannes


_______________________________________________
QGIS-Developer mailing list
[email protected]
List info:https://lists.osgeo.org/mailman/listinfo/qgis-developer
Unsubscribe:https://lists.osgeo.org/mailman/listinfo/qgis-developer

--
Jacky Volpes

Ingénieur SIG - Oslandia
_______________________________________________
QGIS-Developer mailing list
[email protected]
List info: https://lists.osgeo.org/mailman/listinfo/qgis-developer
Unsubscribe: https://lists.osgeo.org/mailman/listinfo/qgis-developer

Reply via email to