Я новичок в Django rest framework serializers.Python Django rest framework Post Получить сериализатор
У меня есть этот сериализатор, который я использую для запросов GET.
class MemberChargeSerializer(serializers.ModelSerializer):
chargeTypeName = serializers.CharField(
source='chargeType.memberChargeTypeName',
read_only=True)
firstName = serializers.CharField(
source='user.first_name',
read_only=True)
lastName = serializers.CharField(
source='user.last_name',
read_only=True)
class Meta:
model = MemberCharge
fields = ('id', 'chargeTypeName', 'firstName', 'lastName', 'amount',
'amountPaid', 'fullyPaid', 'date', 'void')
Это хорошо работает. Теперь мне нужно что-то сделать для обработки запроса POST
. Я не буду представлять следующие поля: id
, firstName
, lastName
, fullyPaid
в request.data
. Я думал о внедрении другого сериализатора для обработки моих запросов POST
. Правильно ли это? Имейте в виду, что я отправлю другие поля и не буду использовать некоторые из них.
спасибо.
Я добавил пустой = True параметра и при попытке извлечь объект или коллекцию объектов в моем браузере я получаю это error: __init __() получил неожиданный аргумент ключевого слова 'blank' –
Я ввел этот параметр в сериализатор, он должен быть в модели. Итак, важно то, как определяется модель для проверки или аннулирования данных, поступающих в сериализатор. –
вы также можете добавить дополнительную выборочную проверку, переопределив функцию is_valid сериализатора – prateek