#javascript #express #sequelize.js #latitude-longitude #google-latitude
Вопрос:
Здесь у меня есть широта и долгота магазина и пользователя, я хочу показать свой список магазинов между пользователем и широтой и долготой магазина . как я могу это сделать в sequlize orm
const latitude = req.query.latitude; // user latitude
const longitude = req.query.longitude; // user longitutde
const shopLists = await Shop.findAll({
limit,offset,
attributes:["latitude","longitude"],
where:{
category_id:category_id,
status:1,
},
include :{
model:Category,attributes:['id','name']
}
});
Ответ №1:
const limit;
// what is offset?
const shopLists = await Shop.findAll({
where: {
longitude: {
[Op.ne]: null,
},
latitude: {
[Op.ne]: null,
},
[Op.and]: [
Sequelize.where(
Sequelize.fn(
'ST_Distance',
Sequelize.fn('point', Sequelize.col('longitude'), Sequelize.col('latitude')),
Sequelize.fn('point', longitude, latitude),
),
'<',
limit,
),
],
},
})
Комментарии:
1. смещение братана-это номер страницы ..кстати,это не работает, я передал широту и долготу пользователя, но я могу получить данные, которые он возвращает пустой массив. терминал показывает это ST_Distance(точка(23.7873, 90.3514), точка(23.7873, 90.3514)) РАВНО НУЛЮ ..