コード例 #1
0
ファイル: models.py プロジェクト: babykick/mobilecity
 def search(self, q, loc, radius=1000):
    from .serializers import POISerializer
    pois = BaiduMap.search_distance(q, loc, radius)
    for item in pois['results']:
        # print item
        # print item['name']
        # print item['location']
        uid = item.get('uid')
        # print uid
        info = super(BaiduPOIManager, self).get_queryset().filter(bdpoi_id=uid)
        if info:
            info = info[0]
            item.update(POISerializer(info).data)
    return pois
コード例 #2
0
ファイル: models.py プロジェクト: babykick/mobilecity
 def search(self, q, loc, radius):
     """ 融合百度POI数据和自有数据
         point: 中心点坐标 tuple (lat, png)
         dist: 到中心点距离
     """
     if not isinstance(loc, Point):
         point = Point(loc)
     base = super(AroundManager, self)
     local = base.get_queryset().filter(coordinate__distance_lte=(point, radius))
     remote  = []
     pois = BaiduMap.search_distance(q, reversed(loc), radius)
     for res in pois['results']:
       item = RecommendItem(title=res['name']+'(test)', summary=u'推荐理由:xxxxxx')
       item.publishTime = datetime.now(pytz.utc)
       item.id = None
       item.uid = res['uid']
       item.category = q
       item.picOne = 'http://res.cloudinary.com/filesbed/image/upload/v1445245936/sample.jpg'
       item.picTwo = 'http://res.cloudinary.com/filesbed/image/upload/v1445245936/sample.jpg'
       item.picThr = 'http://res.cloudinary.com/filesbed/image/upload/v1445245936/sample.jpg'
       item.coordinate = Point(res['location']['lng'], res['location']['lat'])
       item.isLarge = random.choice([True, False])
       remote.append(item)
     return list(local) +  remote