<div dir="ltr"><div>Hi Olivier, <br></div><div>datasource changing is a feature that I really miss and wait from longtime. Every Qgis new release I checked without success if the properties datasource string is editable. I recently found the hack you report (<a href="https://geogear.wordpress.som/2015/05/15/changing-qgis-layer-datasource-with-python/">https://geogear.wordpress.som/2015/05/15/changing-qgis-layer-datasource-with-python/</a>) that I verify to be working up to Wien 2.8.2. Till 2.9 the code crash qgis. Reading your post I realized that a new QgsVectorLayer method has appeared: setDatasource. Wow! Perhaps the waiting is going to be over....<br><br></div><div>Regards,<br><br></div><div>Enrico Ferreguti.<br></div></div><div class="gmail_extra"><br><div class="gmail_quote">2015-06-17 16:45 GMT+02:00 Olivier Dalang <span dir="ltr"><<a href="mailto:olivier.dalang@gmail.com" target="_blank">olivier.dalang@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi Enrico,<div><br></div><div>Hmm I didn't think of that, thanks for the idea ! But I can't use it since I may have several user at once.</div><div><br></div><div>Best,</div><div><br></div><div>Olivier</div></div><div class="gmail_extra"><br><div class="gmail_quote"><span class="">2015-06-17 16:03 GMT+02:00 enricofer <span dir="ltr"><<a href="mailto:enricofer@gmail.com" target="_blank">enricofer@gmail.com</a>></span>:<br></span><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=""><div>Hi Olivier,</div><div>In your case, I think that the best way to do this is to create a view from the sql query and load it as layer, than, <span style="background-color:rgba(255,255,255,0)">when qslider changes, </span>change the view definition with "ALTER VIEW"  and reload the layer.</div><div><br></div><div>Regards,</div><div><br></div><div>Enrico Ferreguti<br></div></span><span class=""><div><div><div><br>Il giorno 17/giu/2015, alle ore 14:29, olivier [via <a href="http://OSGeo.org" rel="nofollow" link="external" target="_blank">OSGeo.org</a>] <<a href="http:///user/SendEmail.jtp?type=node&node=5211452&i=0" rel="nofollow" link="external" target="_blank">[hidden email]</a>> ha scritto:<br><br></div></div></div><blockquote style="border-left:2px solid #cccccc;padding:0 1em" type="cite"><div><div><div>

        <p dir="ltr">Hi !</p>
<p dir="ltr">Is it possible to change the query of a postgis query layer in python without reloading the project ?</p>
<p dir="ltr">The goal is to have a parameter in my query that I'd be able to change with a slider.</p>
<p dir="ltr">I tried the QgsVectorLayer.setDataSource() method, but it makes QGis crash.<br>
I tried the workaround described here (<a href="http://gis.stackexchange.com/questions/62610/changing-data-source-of-layer-in-qgis" rel="nofollow" link="external" target="_blank"> http://gis.stackexchange.com/questions/62610/changing-data-source-of-layer-in-qgis</a> ), writing and reading the XML file, but it also makes QGis crash.</p>
<p dir="ltr">If not possible, is there a serious limitation behind this, or is the feature just missing/bugged ?<br><br></p>
<p dir="ltr">Example :</p>
<p dir="ltr">I have this query loaded as a layer:</p>
<p dir="ltr">"SELECT id, name, ST_Buffer(geom,25) as geom FROM my_table"</p>
<p dir="ltr">But I want to be able to change the hardcoded buffer from 25 to some value from a QSlider.<br><br></p>
<p dir="ltr">Thanks!</p>
<p dir="ltr">Olivier </p>
<br></div></div>_______________________________________________
<br>Qgis-developer mailing list
<br><a href="http:///user/SendEmail.jtp?type=node&node=5211424&i=0" rel="nofollow" link="external" target="_blank">[hidden email]</a>
<br><a href="http://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="nofollow" link="external" target="_blank">http://lists.osgeo.org/mailman/listinfo/qgis-developer</a>

        
        
        
        <br>
        <br>
        <hr color="#cccccc" size="1" noshade>
        <div style="color:#444;font:12px tahoma,geneva,helvetica,arial,sans-serif">
                <div style="font-weight:bold">If you reply to this email, your message will be added to the discussion below:</div>
                <a href="http://osgeo-org.1560.x6.nabble.com/Change-the-query-of-a-query-layer-postgis-tp5211424.html" rel="nofollow" link="external" target="_blank">http://osgeo-org.1560.x6.nabble.com/Change-the-query-of-a-query-layer-postgis-tp5211424.html</a>
        </div>
        <div style="color:#666;font:11px tahoma,geneva,helvetica,arial,sans-serif;margin-top:.4em;line-height:1.5em">
                
                To unsubscribe from Quantum GIS - Developer, <a rel="nofollow" link="external">click here</a>.<br>
                <a href="http://osgeo-org.1560.x6.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml" rel="nofollow" style="font:9px serif" link="external" target="_blank">NAML</a>
        </div></div></blockquote>


        
        
        
<br></span><span class=""><hr width="300" align="left">
View this message in context: <a href="http://osgeo-org.1560.x6.nabble.com/Change-the-query-of-a-query-layer-postgis-tp5211424p5211452.html" target="_blank">Re: Change the query of a query layer (postgis)</a><br>
Sent from the <a href="http://osgeo-org.1560.x6.nabble.com/Quantum-GIS-Developer-f4099106.html" target="_blank">Quantum GIS - Developer mailing list archive</a> at Nabble.com.<br><br></span>_______________________________________________<br>
Qgis-developer mailing list<br>
<a href="mailto:Qgis-developer@lists.osgeo.org" target="_blank">Qgis-developer@lists.osgeo.org</a><br>
<a href="http://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer" target="_blank">http://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br></blockquote></div><br></div>
</blockquote></div><br></div>