def get_zip(self, lat, lon): coords = {"lat": lat, "lon": lon} result = (self.zips[0]['zip'], distance(self.zips[0]['point'], coords)) for zipcode in self.zips[1:]: if distance(zipcode['point'], coords) < result[1]: result = (zipcode['zip'], distance(zipcode['point'], coords)) return result[0]
def serialize_data(self, data, **kwargs): lat = kwargs.get('lat') lon = kwargs.get('lon') max_distance = 0 for store in data: max_distance = max(max_distance, distance(store, Point(lat, lon))) results = { "results": data, "meta": { "count": len(data), "center": { "lon": float(lon), "lat": float(lat) }, "max_distance": max_distance } } return results