내 Django 모델에는 10 개의 필드가 있으며 외래 키인 3 개의 필드가 있습니다. GET 요청에서받은 JSON 데이터에 외래 키가 아닌 모든 필드가 나타납니다.Tastypie에서 외래 키 요소를로드하는 방법
나는 또한 이런 짓을했는지,하지만 난 여전히 그 JSON 데이터의 필드 받고 있지 않다 : 예를 들어
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
리소스를 정의하지 않고이를 수행 할 수있는 방법이 있습니까? Othwise 나는 djnago에서 내 모든 모델의 자원을 만들 수 있습니다. 시간 낭비가 아닙니다. – user825904
추가 리소스를 만드는 것이 최선의 방법입니다. 최소의 리소스를 만들어서 API에서 지우고 (URL에 추가하지 않고) full = True로 포함시킬 수 있습니다. 별로 쓸데없는 일이 아닐세. 그렇지 않으면, 탈수 방법이 대안이다. – Blake