Wie gehe ich über die Wiederverwendung des referenzierten Objekts, wenn verschachtelte Serializer in der DRF mit:Wiederverwendung von existierenden Objekt in Django Ruhe Framework-Nested Serializer
Lassen Sie uns sagen, ich habe die folgenden zwei Model
s:
class Address(models.Model):
address_line = models.CharField(max_length=45)
class Person(models.Model):
name = models.CharField(max_length=45)
address = models.ForeignKey(Address)
mit Serializer
s:
class AddressSerializer(serializers.ModelSerializer):
class Meta:
model = Address
class PersonSerializer(serializers.ModelSerializer):
address = AddressSerializer()
class Meta:
model = Person
Im Moment der Serializer Griff zu schaffen sowohl die Address
und die Person
zusammen. z.B. wenn ich poste die folgenden:
{
'name': 'Alex',
'address': {
'address_line': "1 Here"
}
}
ein Person
erstellt und ein Address
mit dem Person
auf die neu Address
erstellt zeigt erstellt.
Was ist der beste Weg, um nicht ein neues Address
zu schaffen, sondern eine bestehendes Address
wieder zu verwenden, wenn es bereits ein Address
mit einer bestimmten address_line
? wenn ich das address_line
Feld unique
machen wollte? (Dieses Objekt Wiederverwendung wird manchmal als „Internierung“ genannt)
Was ist, wenn gab es zwei Adressfelder address_line1
und address_line2
und ich wollte das Address
Objekt wieder zu verwenden, wenn es bereits ein Address
mit diesen beiden Feldern besteht (dh unique_together=(address_line1, address_line2)
)
Ich habe Dasselbe Problem. Hast du eine Lösung gefunden? –