|
@@ -13,7 +13,7 @@ import flask_sqlalchemy
|
|
|
from sqlalchemy.types import TypeDecorator, VARCHAR, DateTime
|
|
|
from sqlalchemy.ext.mutable import MutableDict
|
|
|
from sqlalchemy import event
|
|
|
-import geoalchemy as geo
|
|
|
+import geoalchemy2 as geo
|
|
|
import whoosh
|
|
|
from whoosh import fields, index, qparser
|
|
|
|
|
@@ -162,7 +162,7 @@ class CoveredArea(db.Model):
|
|
|
id = db.Column(db.Integer, primary_key=True)
|
|
|
isp_id = db.Column(db.Integer, db.ForeignKey('isp.id'))
|
|
|
name = db.Column(db.String)
|
|
|
- area = geo.GeometryColumn(geo.MultiPolygon(2))
|
|
|
+ area = db.Column(geo.Geometry(geometry_type="MULTIPOLYGON", management=True))
|
|
|
area_geojson = db.column_property(db.func.AsGeoJSON(db.literal_column('area')), deferred=True)
|
|
|
|
|
|
@classmethod
|
|
@@ -178,16 +178,12 @@ class CoveredArea(db.Model):
|
|
|
def __repr__(self):
|
|
|
return u'<CoveredArea %r>' % (self.name,)
|
|
|
|
|
|
-geo.GeometryDDL(CoveredArea.__table__)
|
|
|
-
|
|
|
|
|
|
class RegisteredOffice(db.Model):
|
|
|
__tablename__ = 'registered_offices'
|
|
|
id = db.Column(db.Integer, primary_key=True)
|
|
|
isp_id = db.Column(db.Integer, db.ForeignKey('isp.id'))
|
|
|
- point = geo.GeometryColumn(geo.Point(0))
|
|
|
-
|
|
|
-geo.GeometryDDL(RegisteredOffice.__table__)
|
|
|
+ point = db.Column(geo.Geometry(geometry_type="POINT", management=True))
|
|
|
|
|
|
|
|
|
@event.listens_for(db.metadata, 'before_create')
|