Ich möchte ein Modell serialisieren und zusätzliche Feld hinzufügen. Ich möchte diesen Serializer für Listen, Details und Ansichten verwenden. Im Serialisierer verwende ich die Methoden create, update und get_field, um die Logik anzupassen.Django Rest Framework extra Serializer Feld mit get und Post
class ExampleSerializer(serializers.ModelSerializer):
field = serializers.CharField()
class Meta:
model = Example
fields = ("field", ...)
Wenn ich hinzufügen neues Objekt alles korrekt ist (I benutzerdefinierte Feld Datenvalidierung kann), aber wenn ich Objekt bekommen, ‚Feld‘ tun existiert nicht in der Antwort.
EDIT: Ich möchte benutzerdefinierte Methode auf Serializer-Klasse, Feld zu erhalten. Dies ist eine bessere logische Lösung für mich, dann legen Sie die benutzerdefinierte Methode für das Modell fest.
Warum ist das so? Gibt es eine bessere Lösung dafür (ich möchte nicht SerializerMethodField verwenden)?
Wenn ich hinzufügen Quellattribut auf dem Feld muss ich benutzerdefinierte Methode auf Modell. Ich möchte verwenden Sie die Methode auf Serializer-Klasse. Das ist eine bessere Logik für mich. Ist das möglich? – SmoQ
Sie müssen nur Quell-Argument in diesem Feld im String-Format geben. –