fix: 修复drf-yasg嵌套序列化器导致Redoc/Swagger 500错误

This commit is contained in:
2026-05-19 14:08:11 +08:00
parent ec7c5c28bb
commit 44d5b08a69
2 changed files with 5 additions and 5 deletions

View File

@@ -33,10 +33,8 @@ class DeviceAttachmentSerializer(serializers.ModelSerializer):
class DeviceSerializer(serializers.ModelSerializer):
serials = DeviceSerialSerializer(many=True, required=False)
ips = DeviceIPSerializer(many=True, required=False)
maintenance_records = MaintenanceRecordSerializer(many=True, read_only=True)
attachments = DeviceAttachmentSerializer(many=True, read_only=True)
serials = serializers.ListField(child=serializers.DictField(), required=False, write_only=True)
ips = serializers.ListField(child=serializers.DictField(), required=False, write_only=True)
service_duration_days = serializers.IntegerField(read_only=True)
is_warranty_expired = serializers.BooleanField(read_only=True)
primary_serial = serializers.SerializerMethodField()
@@ -50,7 +48,7 @@ class DeviceSerializer(serializers.ModelSerializer):
'thumbnail', 'status', 'responsible_person', 'warranty_expire',
'service_duration_days', 'is_warranty_expired', 'primary_serial',
'primary_ip', 'latest_maintenance', 'serials', 'ips',
'maintenance_records', 'attachments', 'created_at', 'updated_at']
'created_at', 'updated_at']
read_only_fields = ['created_at', 'updated_at']
def get_primary_serial(self, obj):