mirror of
https://github.com/qgis/QGIS.git
synced 2025-11-22 00:14:55 -05:00
Don't show a empty geometry field when expanding aspatial GPKG tables in browser
This commit is contained in:
parent
16e572daef
commit
b35968e147
@ -535,7 +535,7 @@ QgsFields QgsGeoPackageProviderConnection::fields( const QString &schema, const
|
|||||||
}
|
}
|
||||||
// Append name of the geometry column, the data provider does not expose this information so we need an extra query:/
|
// Append name of the geometry column, the data provider does not expose this information so we need an extra query:/
|
||||||
const QString sql = QStringLiteral( "SELECT g.column_name "
|
const QString sql = QStringLiteral( "SELECT g.column_name "
|
||||||
"FROM gpkg_contents c LEFT JOIN gpkg_geometry_columns g ON (c.table_name = g.table_name) "
|
"FROM gpkg_contents c CROSS JOIN gpkg_geometry_columns g ON (c.table_name = g.table_name) "
|
||||||
"WHERE c.table_name = %1" ).arg( QgsSqliteUtils::quotedString( table ) );
|
"WHERE c.table_name = %1" ).arg( QgsSqliteUtils::quotedString( table ) );
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
|||||||
@ -158,6 +158,13 @@ class TestPyQgsProviderConnectionGpkg(unittest.TestCase, TestPyQgsProviderConnec
|
|||||||
self.assertIn(table_info.primaryKeyColumns()[0], fields.names())
|
self.assertIn(table_info.primaryKeyColumns()[0], fields.names())
|
||||||
self.assertEqual(fields.names(), ['fid', 'id', 'typ', 'name', 'ortsrat', 'id_long', 'geom'])
|
self.assertEqual(fields.names(), ['fid', 'id', 'typ', 'name', 'ortsrat', 'id_long', 'geom'])
|
||||||
|
|
||||||
|
# aspatial table
|
||||||
|
fields = conn.fields('', 'myNewAspatialTable')
|
||||||
|
table_info = conn.table('', 'myNewAspatialTable')
|
||||||
|
self.assertFalse(table_info.geometryColumn())
|
||||||
|
self.assertIn(table_info.primaryKeyColumns()[0], fields.names())
|
||||||
|
self.assertEqual(fields.names(), ['fid'])
|
||||||
|
|
||||||
@unittest.skipIf(int(gdal.VersionInfo('VERSION_NUM')) < GDAL_COMPUTE_VERSION(3, 5, 0), "GDAL 3.5 required")
|
@unittest.skipIf(int(gdal.VersionInfo('VERSION_NUM')) < GDAL_COMPUTE_VERSION(3, 5, 0), "GDAL 3.5 required")
|
||||||
def test_gpkg_field_domain_names(self):
|
def test_gpkg_field_domain_names(self):
|
||||||
"""
|
"""
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user