Bobsans
@Bobsans
Full-Stack Developer

Как оформить запрос в БД при помощи Django ORM?

Доброго времени суток.

Столкнутся с проблемой выбора из базы при помощи функций PostgreSQL. Есть на постгресе функция "poly_contain_pt", которая проверяет находится ли точка в полигоне. И есть данные: точки полигона.

Есть модель record, вида:
class Record:
    name = models.CharField(max_length=255)
    location = LocationField()

LocationField сам дописал. Это постресовский ARRAY с двумя элементами (x, y).

Навоял вот такую штуку, работает:
SELECT * FROM record 
WHERE poly_contain_pt(
    POLYGON(PATH '((56,28),(56,30),(55,31),(54,31),(54,32),(53,32),(53,33),(52,32,(52,32))'), 
    POINT(location[2], location[1])
);


Можно ли при помощи Django ORM это как-то описать? В документации мало чего нашел, в гугле много чего уже не рабочего. Спасибо.
  • Вопрос задан
  • 94 просмотра
Пригласить эксперта
Ответы на вопрос 1
Guest007
@Guest007
Django, Python, Linux и всё такое...
Django + PostGIS = https://docs.djangoproject.com/en/2.2/ref/contrib/...
Замечательно вместе скрещивается. Сразу и соответствующие поля в моделях и гео-методы доступны без танцев с бубном. Вычисление вхождения точки в фигуру и прочее - на раз. Я так делал. Так что можно не городить своё. Ну, если только очень хочется.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Omnic Москва
от 100 000 до 160 000 руб.
CRON Махачкала
от 60 000 до 140 000 руб.
Uploadcare Санкт-Петербург
от 2 800 usd.
16 окт. 2019, в 17:12
300 руб./за проект
16 окт. 2019, в 17:11
3000 руб./за проект
16 окт. 2019, в 17:07
3800 руб./за проект