1
0
Fork 0
satnogs-network/network/api/serializers.py

52 lines
1.5 KiB
Python
Raw Normal View History

from django.conf import settings
from django.contrib.sites.models import Site
2014-10-15 13:20:46 -06:00
from rest_framework import serializers
2014-12-19 06:06:58 -07:00
from network.base.models import (Antenna, Data, Observation, Satellite,
Station, Transponder)
2014-10-15 13:20:46 -06:00
class AntennaSerializer(serializers.ModelSerializer):
class Meta:
model = Antenna
fields = ('frequency', 'band', 'antenna_type')
class StationSerializer(serializers.ModelSerializer):
class Meta:
model = Station
fields = ('owner', 'name', 'image', 'alt', 'lat', 'lng',
2014-12-03 19:11:29 -07:00
'antenna', 'featured_date', 'id')
2014-10-15 13:20:46 -06:00
image = serializers.SerializerMethodField('image_url')
def image_url(self, obj):
site = Site.objects.get_current()
return '{}{}{}'.format(site, settings.MEDIA_URL, obj.image)
2014-10-15 13:20:46 -06:00
class SatelliteSerializer(serializers.ModelSerializer):
class Meta:
model = Satellite
fields = ('norad_cat_id', 'name')
class TransponderSerializer(serializers.ModelSerializer):
class Meta:
model = Transponder
fields = ('description', 'alive', 'uplink_low', 'uplink_high',
'downlink_low', 'downlink_high', 'mode', 'invert',
'baud', 'satellite')
class ObservationSerializer(serializers.ModelSerializer):
class Meta:
model = Observation
fields = ('satellite', 'transponder', 'author', 'start', 'end')
class DataSerializer(serializers.ModelSerializer):
class Meta:
model = Data
2014-12-13 10:49:15 -07:00
fields = ('id', 'start', 'end', 'observation', 'ground_station', 'payload')