Skip to content

Commit a58e648

Browse files
committed
[processing] improved import to postgis algorithm
1 parent 1bf3be5 commit a58e648

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

python/plugins/processing/algs/qgis/ImportIntoPostGIS.py

+8-5
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,12 @@ def processAlgorithm(self, progress):
7474
raise GeoAlgorithmExecutionException(
7575
'Wrong database connection name: ' + connection)
7676

77-
table = self.getParameterValue(self.TABLENAME)
77+
layerUri = self.getParameterValue(self.INPUT)
78+
layer = dataobjects.getObjectFromUri(layerUri)
79+
80+
table = self.getParameterValue(self.TABLENAME).strip()
81+
if table == '':
82+
table = layer.name().lower()
7883
table.replace(' ', '')
7984
providerName = 'postgres'
8085

@@ -105,8 +110,6 @@ def processAlgorithm(self, progress):
105110
else:
106111
uri.setDataSource(schema, table, geomColumn, '')
107112

108-
layerUri = self.getParameterValue(self.INPUT)
109-
layer = dataobjects.getObjectFromUri(layerUri)
110113
(ret, errMsg) = QgsVectorLayerImport.importLayer(
111114
layer,
112115
uri.uri(),
@@ -139,8 +142,8 @@ def defineCharacteristics(self):
139142
self.addParameter(ParameterSelection(self.DATABASE, 'Database (connection name)',
140143
self.DB_CONNECTIONS))
141144

142-
self.addParameter(ParameterString(self.SCHEMA, 'Schema (schema name)'))
143-
self.addParameter(ParameterString(self.TABLENAME, 'Table to import to'
145+
self.addParameter(ParameterString(self.SCHEMA, 'Schema (schema name)', 'public'))
146+
self.addParameter(ParameterString(self.TABLENAME, 'Table to import to (leave blank to use layer name)'
144147
))
145148
self.addParameter(ParameterTableField(self.PRIMARY_KEY, 'Primary key field',
146149
self.INPUT, optional=True))

0 commit comments

Comments
 (0)