私のDjangoモデルでは、10個のフィールドがあり、3個のフィールドが外部キーです。 GETリクエストから受け取ったJSONデータでは、すべてのフィールドを取得していますが、外部キーは取得していません。私もこれを行っているが、私はまだJSONデータでそれらのフィールドを取得していない午前Tastypieで外部キー要素をロードするには
:たとえば
DataFields = MyData._meta.get_all_field_names()
class MyResource(ModelResource):
class Meta:
queryset = MyData.objects.all()
resource_name = 'Myres'
serializer = Serializer(formats=['json'])
filtering = dict(zip(DataFields, [ALL_WITH_RELATIONS for f in DataFields]))
、私はcity
のようなモデルのフィールドを持っていますが、そのフィールドはでは使用できませんJSON私はそれから得る。
JSONでcity:city__name
を自動的に取得できる方法はありますか?私はこれを行う場合は
、その後、私は街を得るが、私は定義せずにそれを行うことができます。
def dehydrate(self, bundle):
bundle.data["city_name"] = bundle.obj.city__name
return bundle
リソースを定義することなくこれを行う方法はありますか。そうでなければ私はdjnagoの私のすべてのモデルのリソースを作っています。それは時間の無駄ではありません – user825904
追加リソースを作ることがあなたの最善の策になるでしょう。最低限のリソースを作成してAPIから削除し(URLに追加しないでください)、 'full = True'を埋め込むことができます。それほど余分な仕事ではないでしょう。それ以外の場合は、脱水方法が選択肢です。 – Blake