Junior — Middle
Kedy sa presne volá metóda update v rámci práce serializátora?
sobes.tech AI
Odpoveď od AI
Metóda update v serializéroch (napríklad v Django REST Framework) sa volá pri aktualizácii existujúceho objektu prostredníctvom serializéra.
Keď zavoláte serializer.save() a odovzdáte už existujúci príklad modelu (cez parameter instance), vo vnútri serializéra sa volá metóda update, ktorá je zodpovedná za aktualizáciu polí tohto objektu na základe odovzdaných dát.
Príklad:
serializer = MySerializer(instance=existing_obj, data=request.data)
if serializer.is_valid():
serializer.save() # zavolá update
Ak serializátor vytvára nový objekt (bez instance), volá sa metóda create.
Preto sa update volá pri ukladaní serializéra s už existujúcim objektom na aktualizáciu dát tohto objektu.