我想从Foursquare获取一些信息,添加一些字段并通过
django-tastypie返回.
更新:
更新:
- def obj_get_list(self,request=None,**kwargs):
- near = ''
- if 'near' in request.GET and request.GET['near']:
- near = request.GET['near']
- if 'q' in request.GET and request.GET['q']:
- q = request.GET['q']
- client = foursquare.Foursquare(client_id=settings.FSQ_CLIENT_ID,client_secret=settings.FSQ_CLIENT_SECRET)
- a = client.venues.search(params={'query': q,'near' : near,'categoryId' : '4d4b7105d754a06374d81259' })
- objects = []
- for venue in a['venues']:
- bundle = self.build_bundle(obj=venue,request=request)
- bundle = self.full_dehydrate(bundle)
- objects.append(bundle)
- return objects
现在我得到:
有2个空对象.我该怎么做才能填补这个资源?
解决方法
ModelResource仅适用于资源后面有ORM模型的情况.在其他情况下,您应该使用资源.
这个主题在ModelResource描述中讨论,提到它何时适用,何时不适用:http://django-tastypie.readthedocs.org/en/latest/resources.html#why-resource-vs-modelresource
此外,文档中还有一章,旨在提供有关如何实现非ORM数据源的详细信息(在本例中为:外部API):http://django-tastypie.readthedocs.org/en/latest/non_orm_data_sources.html