加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – Tastypie:如何在没有数据库的情况下填充资源?

发布时间:2020-12-16 23:32:59 所属栏目:Python 来源:网络整理
导读:我想从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 requ
我想从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

现在我得到:

{
  "meta": {
    "limit": 20,"next": "/api/v1/venue/?q=Borek&near=Kadikoy","offset": 0,"previous": null,"total_count": 30
  },"objects": [
    {
      "resource_uri": ""
    },{
      "resource_uri": ""
    }]
}

有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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读