我正在为开发.I的python插件,开发了与rt sql layer相同的插件,并在qgis中进行了协作。当我在我的exe.But ok按钮上运行qgis 时,它打开得很好,我有下面的代码来形成层。
# create the layer
uri = self.db.getURI()
uri.setDataSource("", "(" + query + ")", geomFieldName, "", uniqueFieldName)
vl = self.iface.addVectorLayer(uri.uri(), newLayerName, self.db.getProviderName())
QApplication.restoreOverrideCursor()
if vl and vl.isValid():
self.saveQuery()
self.accept()getURI()以另一种形式定义如下:
def getURI(self):
# returns a new QgsDataSourceURI instance
return qgis.core.QgsDataSourceURI( self.uri.connectionInfo() )点击ok按钮会让我说错话
return qgis.core.QgsDataSourceURI( self.uri.connectionInfo() )
AttributeError: 'NoneType' object has no attribute 'connectionInfo'URI应该包含什么??
发布于 2012-03-21 17:54:57
看起来,self.uri中的getURI()没有初始化。你查过这个了吗?你的片段不允许重现这个问题。尝试张贴self.uri填充的代码(并检查此部分是否实际执行)。
https://stackoverflow.com/questions/9529755
复制相似问题