features.py 757 B

12345678910111213141516
  1. from django.contrib.gis.db.backends.base.features import BaseSpatialFeatures
  2. from django.db.backends.sqlite3.features import DatabaseFeatures as SQLiteDatabaseFeatures
  3. from django.utils.functional import cached_property
  4. class DatabaseFeatures(BaseSpatialFeatures, SQLiteDatabaseFeatures):
  5. supports_distance_geodetic = False
  6. # SpatiaLite can only count vertices in LineStrings
  7. supports_num_points_poly = False
  8. @cached_property
  9. def supports_initspatialmetadata_in_one_transaction(self):
  10. # SpatiaLite 4.1+ support initializing all metadata in one transaction
  11. # which can result in a significant performance improvement when
  12. # creating the database.
  13. return self.connection.ops.spatial_version >= (4, 1, 0)