Ответ 1
RelatedField
- базовый класс для всех полей, которые работают с отношениями. Обычно вы не должны использовать его, если вы не подклассифицируете его для настраиваемого поля.
В вашем случае вам вообще не требуется связанное поле. Вы ищете только одно-единственное представление внешнего ключа, поэтому вы можете просто использовать CharField
.
class StationSerializer(serializers.ModelSerializer):
station = serializers.CharField(read_only=True)
class Meta:
model = Station
class FlatSerializer(serializers.ModelSerializer):
station_name = serializers.CharField(source='station.name', read_only=True)
class Meta:
model = Flat
fields = ('station_name', )
Вам также требуется name
объекта Station
в вашем FlatSerializer
. Вы должны указать source
точное поле, поэтому я обновил его до station.name
для вас.