Я создаю базу данных инвентаризации автомобилей и пытаюсь заполнить ее данными json, предоставленными API.Что не так с моим seralizer?
Это для Windows, баз данных Django2 и Sqlite и Python3.Пожалуйста, помогите мне получить желаемый результат!Спасибо
seralizer.py
from rest_framework import serializers
from .models import SavedInventory
class EmbedSerializer(serializers.ModelSerializer):
class Meta:
model = SavedInventory
fields = '__all__'
views.py
vin = form.cleaned_data['vin']
links={"X-RapidAPI-Host":settings.VINDECODERHOST, "X-RapidAPI-Key": settings.VINDECODERKEY}
r = requests.get("https://vindecoder.p.rapidapi.com/decode_vin?vin="+ vin + "&key=" + settings.VINDECODERKEY)
json = r.json()
serializer = EmbedSerializer(data=json)
if serializer.is_valid():
saved = serializer.save()
return render(request, 'saved.html', {'embed': embed})
else:
return HttpResponse('<h1>ERROR Seralizer</h1>')
Sqlite models.py
from django.db import models
# Create your models here.
class SavedInventory(models.Model):
vin = models.CharField(max_length=15)
year = models.CharField(max_length=4)
make = models.CharField(max_length=20)
model = models.CharField(max_length=20)
trim_level = models.CharField(max_length=20)
engine = models.CharField(max_length=50)
style = models.CharField(max_length=50)
steering_type = models.CharField(max_length=15)
anti_brake_system = models.CharField(max_length=80)
tank_size = models.CharField(max_length=50)
overall_height = models.CharField(max_length=50)
overall_length = models.CharField(max_length=50)
overall_width = models.CharField(max_length=50)
highway_mileage = models.CharField(max_length=30)
city_mileage = models.CharField(max_length=30)
JSON Ответ от API
"success":true,
"specification":{
"vin":"JNKCA31A61T027494",
"year":"2001",
"make":"Infiniti",
"model":"I30",
"trim_level":"Touring",
"engine":"3.0L V6 DOHC 24V",
"style":"Sedan (4-Door)",
"made_in":"Japan",
"steering_type":"R&P",
"anti_brake_system":"4-Wheel ABS",
"tank_size":null,
"overall_height":"56.50 inches",
"overall_length":"193.70 inches",
"overall_width":"70.20 inches",
"standard_seating":"5",
"optional_seating":null,
"highway_mileage":"28 miles/gallon",
"city_mileage":"20 miles/gallon",
"fuel_type":"Gasoline",
"drive_type":"FWD",
"transmission":"Automatic",
"features":[
"Air Conditioning",
"Cruise Control",
"Power Seat (Driver)",
"Remote Trunk Release",
"Anti-theft System",
"Front Airbags (Driver)",
"Tachometer"
]
},
"vin":"JNKCA31A61T027494"
}