1234567891011121314151617181920212223242526272829303132333435 |
- # coding=utf-8
- import json
- from rest_framework import serializers
- from .models import Equipment
- from utils.exceptions import CustomError
- from apps.account.models import User
- class EquipmentSerializer(serializers.ModelSerializer):
- type_text = serializers.CharField(source='type.name', read_only=True)
- supplier_text = serializers.CharField(source='supplier.name', read_only=True)
- location_text = serializers.SerializerMethodField()
- def get_location_text(self, obj):
- return obj.location.get_full_name()
- class Meta:
- model = Equipment
- fields = '__all__'
- def create(self, validated_data):
- validated_data['location_id'] = self.context['request'].data['location']
- validated_data['type_id'] = self.context['request'].data['type']
- validated_data['supplier_id'] = self.context['request'].data['supplier']
- instance = super(EquipmentSerializer, self).create(validated_data)
- return instance
- def update(self,instance, validated_data):
- validated_data['location_id'] = self.context['request'].data['location']
- validated_data['type_id'] = self.context['request'].data['type']
- validated_data['supplier_id'] = self.context['request'].data['supplier']
- instance = super(EquipmentSerializer, self).update(instance, validated_data)
- return instance
|