使用ORM在flask+geoalchemy中查找x英里以外的所有用户

2024-06-16 10:25:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我创建了以下SQL查询来查找一英里内的所有用户,它似乎工作正常:

SELECT * FROM user 
WHERE ST_DWithin(
    user.location, 
    ST_MakePoint(-2.242631, 53.480759)::geography, 1609) 
);

但是我想把它转换成一个flask/sqlalchemy/geoalchemy查询?你知道吗


Tags: 用户fromflasksqlsqlalchemylocationgeoalchemywhere
1条回答
网友
1楼 · 发布于 2024-06-16 10:25:35

尝试以下操作:

DISTANCE = 100 #100 meters
db.session.query(User).filter(func.ST_DWithin(User.location, cast(funct.ST_SetSRID(func.ST_MakePoint(-2.242631, 53.480759), 1609), Geography), DISTANCE)).all()

相关问题 更多 >