本文整理汇总了Python中qgis.core.QgsVirtualLayerDefinition.setLazy方法的典型用法代码示例。如果您正苦于以下问题:Python QgsVirtualLayerDefinition.setLazy方法的具体用法?Python QgsVirtualLayerDefinition.setLazy怎么用?Python QgsVirtualLayerDefinition.setLazy使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类qgis.core.QgsVirtualLayerDefinition
的用法示例。
在下文中一共展示了QgsVirtualLayerDefinition.setLazy方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_lazy
# 需要导入模块: from qgis.core import QgsVirtualLayerDefinition [as 别名]
# 或者: from qgis.core.QgsVirtualLayerDefinition import setLazy [as 别名]
def test_lazy(self):
l1 = QgsVectorLayer(os.path.join(self.testDataDir, "france_parts.shp"), "françéà", "ogr", QgsVectorLayer.LayerOptions(False))
self.assertEqual(l1.isValid(), True)
QgsProject.instance().addMapLayer(l1)
df = QgsVirtualLayerDefinition()
df.setQuery('select * from "françéà"')
df.setLazy(True)
vl = QgsVectorLayer(df.toString(), "testq", "virtual")
self.assertEqual(vl.isValid(), True)
ids = [f.id() for f in vl.getFeatures()]
self.assertEqual(len(ids), 0)
vl.reload()
ids = [f.id() for f in vl.getFeatures()]
self.assertEqual(len(ids), 4)
QgsProject.instance().removeMapLayer(l1.id())