Как присвоить внешний ключ внутри цикла Django
введите описание изображения здесьЯ хочу присвоить внешний ключ каждому цвету в цикле
colorArray=[{color:'red', product_id:5}, {color:'yellow', product_id:5}]
Модель продукта
class Product(models.Model):
name = models.CharField(max_length=500)
brand = models.CharField(max_length=500)
description = models.CharField(max_length=500)
Цветовая модель
class Color(models.Model):
colorName = models.CharField(max_length=500)
product_id = models.ForeignKey(Product, on_delete=models.CASCADE)
просмотров
class AddColors(APIView):
def post(self,request):
for i in colorArray:
s=AddColors()
s.colorName=i['color']
s.product_id=i[Product.objects.get(id=i['product_id'])]
s.save()
return Response({'colors Saved'})
Вы делаете это неправильно, на ваш взгляд:
class AddColors(APIView):
def post(self,request):
for i in colorArray:
s = AddColors() # This is not correct
s = Color() # Your model class is Color not AddColors
s.colorName = i['color']
# This is also incorrect:
s.product_id = i[Product.objects.get(id=i['product_id'])]
# It should be like this:
s.product_id = Product.objects.get(id=i['product_id'])
s.save()
return Response({'colors Saved'})