我有一个带有地址和用户的公司列表,这些公司发送索赔(也设置了他们自己的位置)。
而且我只需要为用户附近 20 英里内的公司发送电子邮件。我怎样才能做到这一点?
我有一个带有地址和用户的公司列表,这些公司发送索赔(也设置了他们自己的位置)。
而且我只需要为用户附近 20 英里内的公司发送电子邮件。我怎样才能做到这一点?
不知道为什么要使用谷歌地图,因为您发送电子邮件而不是在地图上显示位置,对吧?
我认为您最好的答案是使用地理编码服务将地址转换为纬度和经度,然后将它们放入支持地理空间索引的 Mongo 或其他数据库中。
因此,在地理编码后的 Mongo DB 中,您需要将每个地址转换为以下内容:
{email: 'foobar@foobar.com', address: 'address', loc : { lon : 40.739037, lat: 73.992964 } }
之后,您可以查询数据库以提取用户的电子邮件,在 Mongo 中它将类似于:
db.emails.find( { loc : { $near : [50,50] } } ).limit(20)