5

私のプロジェクトでは、シェープファイルからジオメトリをインポートする必要があります。

これらのいくつかはMULTIPOLYGON Zタイプですが、すべての Z 座標は 0 値です。

ジオメトリを保存しようとすると、次のエラーが表示されます。

「ジオメトリには Z 次元がありますが、列にはありません」

Z次元を削除する最良の方法は何ですか?

私のコード:

ds = DataSource(file_path, encoding='ISO-8859-1')
layers = ds[0]

#need something HERE to coerce geometry to 2D

obj=MyModel(geometry=GEOSGeometry(layers[0].geom.hex))
obj.save()
4

2 に答える 2

0

SQL にアクセスできる場合は、ST_Force2D(またはST_Force_2D古いバージョンの場合) でこれを取得できます。

次のように、型を変更してソース テーブルを修正することもできます。

ALTER TABLE my_table
  ALTER COLUMN geom TYPE geometry(MultiPolygon,4326) USING ST_Force2D(geom);
于 2016-03-07T20:34:08.190 に答える