我将创建和更新嵌套关系,但它没有按预期工作我有三个模型用户、配置文件和地址。Profile 模型是 Address 模型中的 FK
配置文件/模型.py
class Address(models.Model):
profile = models.ForeignKey(Profile, related_name='addresses', on_delete=models.CASCADE)
country = models.CharField(max_length=255)
city = models.CharField(max_length=255)
state = models.CharField(max_length=100)
zip_code = models.CharField(max_length=50)
address = models.CharField(max_length=1000)
Run Code Online (Sandbox Code Playgroud)
配置文件/序列化器.py
class ProfileSerializer(serializers.ModelSerializer):
addresses = AddressSerializer(many=True)
class Meta:
model = Profile
fields = ['gender', 'date_of_birth', 'hometown', 'phone', 'addresses']
def create(self, validated_data):
addresses_data = validated_data.pop('addresses')
profile = Profile.objects.create(**validated_data)
for address_data in addresses_data:
Address.objects.create(profile=profile, **address_data)
return profile
Run Code Online (Sandbox Code Playgroud)
用户/序列化器.py
class UserSerializer(serializers.HyperlinkedModelSerializer):
profile = ProfileSerializer(required=True)
class Meta:
model = User
fields = ['id', 'url', 'first_name', 'last_name', …Run Code Online (Sandbox Code Playgroud)