Sobes.tech
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.