2
我正在嘗試使用South來創建遷移,以將我的數據從使用4326 SRID轉換爲900913.遷移後,座標保持其4326格式。 (這很容易告訴4326點900913的預測之間的差別,因爲數字是900913大得多)遷移GeoDjango模型以更改投影SRID
這裏是正向()和後向()從遷移功能:
class Migration(SchemaMigration):
def forwards(self, orm):
# Changing field 'ZipCoords.point'
zips = orm.ZipCoords.objects.all()
db.alter_column('itinerary_generator_zipcoords', 'point', self.gf('django.contrib.gis.db.models.fields.PointField')(srid=900913, null=True))
for zip in zips:
zip.point.transform(900913)
zip.save()
def backwards(self, orm):
# Changing field 'ZipCoords.point'
zips = orm.ZipCoords.objects.all()
db.alter_column('itinerary_generator_zipcoords', 'point', self.gf('django.contrib.gis.db.models.fields.PointField')(null=True))
for zip in zips:
zip.point.transform(4326)
zip.save()
我我正在使用Django Admin檢查他們的值。另外,有趣的是,這種遷移「反作用」,它將我的座標變成更小(但不正確)的數字。