6

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つの空のオブジェクトがあります。このリソースを埋めるために何をすべきですか?

4

1 に答える 1

9

ModelResourceリソースの背後にORMモデルがある場合にのみ適しています。それ以外の場合は、を使用する必要がありますResource

このテーマについては、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

于 2012-10-18T16:31:08.553 に答える