device_serializers.py 1023 B

123456789101112131415161718192021222324252627282930313233343536
  1. from smartfarming.models.device import MongoDevice
  2. from rest_framework import serializers
  3. from django.conf import settings
  4. device_type = (settings.CONFIG).get("device_type_zh")
  5. device_type_ck = (settings.CONFIG).get("device_type_ck")
  6. class DeviceSerializers(serializers.ModelSerializer):
  7. device_type_name = serializers.SerializerMethodField()
  8. device_addr = serializers.SerializerMethodField()
  9. device_type = serializers.SerializerMethodField()
  10. def get_device_type(self, obj):
  11. return device_type_ck
  12. def get_device_type_name(self, obj):
  13. return device_type.get(str(obj.device_type_id))
  14. def get_device_addr(self, obj):
  15. return obj.province + obj.city + obj.district
  16. class Meta:
  17. model = MongoDevice
  18. fields = [
  19. "device_type_name",
  20. "device_type_id",
  21. "device_type",
  22. "device_id",
  23. "device_name",
  24. "device_addr",
  25. "lng",
  26. "lat",
  27. "device_status"
  28. ]