HiThere

Пользователь

Регистрация: 24.06.2016

Сообщения: 3470

Рейтинг: 2602

HiThere

Регистрация: 24.06.2016

Сообщения: 3470

Рейтинг: 2602

Сразу скажу, гугл не помог

Допустим ситуацию, есть условный интернет магазин, в котором каждый товар привязан к городу, т.е если пользователь выбирает что он находится в Москве, ему нужно показывать товар который есть только в магазинах Москвы. 

Все до чего я смог додуматься это у условного товара хранить в бд почтовый индекс и по нему фильтровать весь товар который есть в бд.

Но тут встает еще 1 проблема, есть мне вдруг захочется сделать условных поиск товара в определенном радиусе (допустим искать весь товар в радиусе 300км). То смысла от почтового индекса будет мало, можно хранить ISO-3166-2 код региона, и искать по нему, но это не решит проблему с поиском по радиусу.  

Еще 1 вариант это хранить и почтовый индекс, и координаты где этот товар находится, затем фильтровать по ширине и долготе, благо для Postgres уже вроде есть норм библиотечка (Postgis вроде).

 

Может будут какие-нибудь идеи?

Scouser_AK

Пользователь

Регистрация: 21.06.2020

Сообщения: 4051

Рейтинг: -745

Нарушения: 110

Scouser_AK

Регистрация: 21.06.2020

Сообщения: 4051

Рейтинг: -745

Нарушения: 110

Ну по координатам, а как еще? 

еще как вариант посмотреть что предоставляет гугл карта, мб там все есть что тебе нужно