Ich stoße auf ein Problem in Django, wenn ich versuche, eine PUT-Anfrage in Postman zu machen.nicht hashbar Typ: 'OrderedDict'
Ich vermute, das Problem liegt daran, dass ich Serialisierer in meiner Modellklasse verschachtelt habe, aber ich bin mir nicht sicher.
class Foo(models.Model):
foo_name = models.CharField(max_length=50, unique=True)
foo_statistics = models.ManyToManyField(TrainStatistics)
class FooSerializer(serializers.ModelSerializer):
blah_statistics = BlahStatisticsSerializer(many=True)
class Meta:
model = Foo
fields = ('foo_statistics')
depth = 2
def create(self, validated_data):
"""
Create and return a new `Summary` instance, given the validated data.
"""
blah_statistics_data = validated_data.pop('blah_statistics')
foo = Foo(**validated_data)
for blah_statistic in blah_statistics_data:
FooStatistic.objects.create(summary=summary, **train_statistic)
return summary
def update(self, instance, validated_data):
"""
Update and return an existing `Foo` instance, given the validated data.
"""
instance.blah_statistics = validated_data.get('blah_statistics', instance.blah_statistics) # This line is causing problems
Jede Idee, was könnte dieses Problem verursachen?
auf den Grund gehen und die Spur hinterlassen, wo der Fehler im Code auftritt. – levi
Kopieren oder verknüpfen Sie niemals ein Bild für den Fehler, fügen Sie das vollständige Traceback ein. –
Aktualisiert die Frage mit der Zeile, die unten Probleme verursacht –