project_search_service.py 文件源码

python
阅读 21 收藏 0 点赞 0 评论 0

项目:tasking-manager 作者: hotosm 项目源码 文件源码
def _get_intersecting_projects(search_polygon: Polygon, author_id: int):
        """ executes a database query to get the intersecting projects created by the author if provided """

        query = db.session.query(Project.id,
                                 Project.status,
                                 Project.default_locale,
                                 Project.geometry.ST_AsGeoJSON().label('geometry')) \
            .filter(ST_Intersects(Project.geometry,
                                  ST_MakeEnvelope(search_polygon.bounds[0],
                                                  search_polygon.bounds[1],
                                                  search_polygon.bounds[2],
                                                  search_polygon.bounds[3], 4326)))

        if author_id:
            query = query.filter(Project.author_id == author_id)

        return query.all()
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号