Найти всех пользователей на расстоянии 10 миль в колбе + геоалхимия с помощью ORM - PullRequest
0 голосов
/ 28 июня 2018

Я создал следующий запрос SQL, чтобы найти всех пользователей за милю, и, похоже, он работает нормально:

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

Однако я хочу преобразовать это в запрос о фляге / sqlalchemy / geoalchemy?

1 Ответ

0 голосов
/ 12 февраля 2019

Попробуйте что-то вроде этого:

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()
...