Трудности с сохранением материала/деталей при использовании REST-фреймворка Django
Я пытаюсь сохранить данные в API REST-фреймворка Django, но даже после многих изменений в коде он всегда возвращает сообщение о том, что родительский объект не существует, при попытке добавить дочерние объекты. У меня нет большого опыта работы с Django Rest, и я дошел до этого момента благодаря некоторым постам здесь, на stackoverflow: Любая помощь приветствуется, и я благодарю вас.
JSON, отправленный приложением:
{
"unity": "PL20220831T143756903",
"pallet": 2,
"employee": 1,
"quantity": 3,
"variety": 2,
"maturation": 1,
"box": 2,
"producer": 1,
"processed": false,
"packers": [
{
"unity": "PL20220831T143756903",
"packer": "E0001B0000000001F",
"packing_date": "2022-08-31T14:38:23.017756-03:00"
}
{
"unity": "PL20220831T143756903",
"packer": "E0001B0000000002F",
"packing_date": "2022-09-01T13:00:23.016766-03:00"
}
]
}
Сериализатор, который получает данные:
class PendingPalletDetailSerializer(serializers.ModelSerializer):
"""
API Pallets Pendentes Detalhes
"""
class Meta:
model = PendingPalletDetail
fields = (
'unity',
'packer',
'packing_date',
)
class PendingPalletTotSerializer(serializers.ModelSerializer):
"""
API Pallets Pendentes
"""
packers = PendingPalletDetailSerializer(many=True)
class Meta:
model = PendingPallet
fields = (
'unity',
'pallet',
'employee',
'quantity',
'variety',
'maturation',
'box',
'producer',
'person',
'date_in_cold_chamber',
'date_out_cold_chamber',
'processed',
'packers',
)
def create(self, validated_data):
details_data = validated_data.pop('packers') # grab the data on details
pendingpallet = PendingPallet.objects.create(**validated_data) # create the master reservation object
for reservation_detail in details_data:
# create a details_reservation referencing the master reservation
PendingPalletDetail.objects.create(**reservation_detail)
return pendingpallet
<<<0><<<0> <<<1> <
<
HTTP 400 Bad Request
Allow: GET, POST, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept
{
"packers": [
{
"unity": [
"Pk inválido \"PL20220831T143756903\" - objeto não existe."
]
}
]
}
Я новичок в Django REST и добрался до этой точки с помощью вот здесь, на stackoverflow.
<<1>