Django Tastypie を使用して、関連 (ToOne) フィールドを持つモデルを別のモデル リソースに公開しています。ウリは次のとおりです。
/api/map/?format=json
full_pages関連する完全なページ リソースを取得するために、クライアントに url パラメータを含めさせたいと考えています。/api/map/?full_pages=1&format=json
Relationship Fields docsをよく理解していませんが、get_fullcallable を作成しました:
def get_full(bundle):
if bundle.request.GET.get('full_pages', 0):
return True
return False
fullの引数にcallable を渡そうとしましたToOneField:
from tastypie.contrib.gis import resources as gis_resources
class MapResource(gis_resources.ModelResource):
page = fields.ToOneField('pages.api.PageResource', 'page', full=get_full)
しかし、pdbで確認すると、get_full呼び出されません。
それで、私は属性を持つカスタムFillableToOneFieldを作成しようとしました:full
class FillableToOneField(fields.ToOneFIeld):
full = get_full
class MapResource(ModelResource):
page = FillableToOneField('pages.api.PageResource', 'page')
繰り返しますが、get_full呼び出されることはありません。
これを行うためのより良い、より簡単な方法はありますか?