fly*_*pen 1 mysql sqlalchemy geospatial
我正在寻找一种将空间数据映射到 sqlalchemy 对象的方法。有人可以告诉我是否有这样的方法吗?谢谢!
您可以MySQL使用GeoAlchemy创建空间列,但不再维护此包。使用GeoAlchemy2 是不可能的,因为它不支持MySQL根据文档。
无论如何,GeoAlchemy没有必要MySQL在Python. 您可以通过创建自定义Geometry类来实现它:
from sqlalchemy import func
from sqlalchemy.types import UserDefinedType
class Geometry(UserDefinedType):
def get_col_spec(self):
return 'GEOMETRY'
def bind_expression(self, bindvalue):
return func.ST_GeomFromText(bindvalue, type_=self)
def column_expression(self, col):
return func.ST_AsText(col, type_=self)
Run Code Online (Sandbox Code Playgroud)
然后,您可以在模型中使用此自定义类型:
your_column = Column(Geometry, nullable=False)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2227 次 |
| 最近记录: |