Tastypie に問題があり、原因がわかりません。回答のない同様の質問: Tastypie 外部キー関係のスロー エラー
リソース:
class VoteResource(ModelResource):
choice = fields.ToOneField(ChoiceResource, 'choice', full=True)
user = fields.ToOneField(UserResource, 'user')
class Meta:
queryset = Vote.objects.all()
resource_name = 'vote'
'''...'''
always_return_data = True
filtering = {
'id': ALL,
'user': ALL_WITH_RELATIONS,
'choice': ALL_WITH_RELATIONS
}
def hydrate(self, bundle):
bundle.obj.user = bundle.request.user
return bundle
オブジェクトを作成するためのリクエスト ペイロード:
{
"choice": "/api/v1/choice/210/"
}
(ユーザーはハイドレートによって自動的に追加されます)。内部の ressources.py で例外がスローされfull_hydrate
ます。django コンソールによると、私のオブジェクトは正しくロードされています。
これを引き起こしているtastypie内の行は
setattr(bundle.obj, field_object.attribute, value.obj) # value obj is the evil one
私を殺しているのは、2日前のように機能したことです。選択肢、ユーザー、またはモデルに関連する他のリソースに触れずに、他のリソースを 1 つ追加しました。最近のコミット履歴を確認しましたが、リソースは変更されていません。