Expose station_alt to observations API
For an observation we already save the TLE and return the station's lattitude and longitude. To accurately reconstruct the geometry of the situation, we also need to return the station's altitude. Closes #486merge-requests/504/head
parent
a21916efbe
commit
9d65a862a4
|
@ -15,16 +15,18 @@ class ObservationSerializer(serializers.ModelSerializer):
|
|||
station_name = serializers.SerializerMethodField()
|
||||
station_lat = serializers.SerializerMethodField()
|
||||
station_lng = serializers.SerializerMethodField()
|
||||
station_alt = serializers.SerializerMethodField()
|
||||
demoddata = DemodDataSerializer(many=True)
|
||||
|
||||
class Meta:
|
||||
model = Observation
|
||||
fields = ('id', 'start', 'end', 'ground_station', 'transmitter', 'norad_cat_id',
|
||||
'payload', 'waterfall', 'demoddata', 'station_name', 'station_lat',
|
||||
'station_lng', 'vetted_status', 'client_version', 'client_metadata')
|
||||
'station_lng', 'station_alt', 'vetted_status', 'client_version',
|
||||
'client_metadata')
|
||||
read_only_fields = ['id', 'start', 'end', 'observation', 'ground_station',
|
||||
'transmitter', 'norad_cat_id', 'station_name',
|
||||
'station_lat', 'station_lng']
|
||||
'station_lat', 'station_lng', 'station_alt']
|
||||
|
||||
def update(self, instance, validated_data):
|
||||
validated_data.pop('demoddata')
|
||||
|
@ -58,6 +60,12 @@ class ObservationSerializer(serializers.ModelSerializer):
|
|||
except AttributeError:
|
||||
return None
|
||||
|
||||
def get_station_alt(self, obj):
|
||||
try:
|
||||
return obj.ground_station.alt
|
||||
except AttributeError:
|
||||
return None
|
||||
|
||||
|
||||
class StationSerializer(serializers.ModelSerializer):
|
||||
antenna = serializers.SerializerMethodField()
|
||||
|
|
Loading…
Reference in New Issue