serializers.py 950 B

1234567891011121314151617181920212223242526
  1. from rest_framework import serializers
  2. import datetime
  3. from .models import PlatSimInfo
  4. class PlatSimInfoSerializer(serializers.ModelSerializer):
  5. def to_representation(self, instance):
  6. """to_representation自定义序列化数据的返回,针对choice字段"""
  7. data = super().to_representation(instance)
  8. data.update(sim_operators=instance.get_sim_operators_display())
  9. data.update(input_type=instance.get_input_type_display())
  10. data.update(platform=instance.get_platform_display())
  11. return data
  12. def update(self, instance, validated_data):
  13. validated_data["upl_time"] = datetime.datetime.now()
  14. return super().update(instance, validated_data)
  15. class Meta:
  16. model = PlatSimInfo
  17. fields = '__all__'
  18. read_only_fields = ["id", "upl_time"]
  19. extra_kwargs = {
  20. "upl_time": {
  21. "format": "%Y-%m-%d %H:%M:%S"
  22. }
  23. }