SQL의 별칭과 같은 DRF Serializer의 모델 필드 이름을 변경하려고합니다. 나는 다른 방법을 시도했지만 성공할 수 없습니다.
models.py
class Park(models.Model):
name = models.CharField(max_length=256)
alternate_name = models.CharField(max_length=256, blank=True)
objects = models.GeoManager()
class Meta:
db_table = u'p_park'
def __unicode__(self):
return '%s' % self.name
def alias_alternate_name(self):
return self.alternate_name
serializers.py
class ParkSerializer(serializers.ModelSerializer):
location = serializers.Field(source='alias_alternate_name')
#location = serializers.SerializerMethodField(source='alias_alternate_name')
#alternate_name as location
class Meta:
model = Park
fields = ('id', 'name', 'location')
또한 Django Queryset에 별칭을 추가하려고 시도했지만 변경할 수 없습니다.
업데이트 됨
이것은 내가 직면 한 예외입니다.
/ ViewName / '모듈'개체의 AttributeError에 '필드'속성이 없습니다.
어떻게 할 수 있습니까?
serializers.SerializerMethodField
접근 방식 의 올바른 구현을 사용하고 있습니까? 내 말은 :serializers.SerializerMethodField('get_location')
그리고def get_location(self, obj): ...