抽象的なユーザを使用してinbuiltユーザモデルをカスタマイズしました。私は、各ユーザーの車両に似ているユーザーモデルと1対1の関係を持つ別のモデル車両を作った。しかし、それはuser_idごとに1台の車両を格納しています。 1人のユーザーに複数の車両を保管する必要があります。私のコードの下に与えられている - Models.pydjango apiで1つのuser_idに複数の車両を格納する必要があります
class User(AbstractUser):
phone_number = models.IntegerField(null=True)
otp = models.IntegerField(null=True)
class Vehicle(models.Model):
user = models.OneToOneField(User)
maker = models.CharField(max_length=500, blank=True)
car_model = models.CharField(max_length=30, blank=True)
Serializer.py
class VehicleSerializer(serializers.ModelSerializer):
user_id = serializers.IntegerField()
class Meta:
model = Vehicle
fields = ('maker', 'car_model', 'user_id')
def create(self, validated_data):
maker = validated_data.pop('make', None)
car_model = validated_data.get('car_model', None)
user_id = validated_data.get('user_id', None)
instance = self.Meta.model(**validated_data)
if user_id is not None:
instance.user_id = user_id
instance.save()
if car_model is not None:
instance.car_model = car_model
instance.save()
return instance
Views.py
@api_view(['POST'])
def vehicle_add(request):
car_model = request.data.get('car_model')
user_id = request.user.id
serializer = VehicleSerializer(data={'user_id': user_id, 'car_model': car_model})
if serializer.is_valid():
serializer.save()
message = "i suceeded"
return Response(message, status=status.HTTP_201_CREATED)
else:
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
私は複数の車両を保存する方法を知っておく必要がありますsingle user_idの下にあります。ありがとう