0Pricing
Flask Academy · Lekcja

Bezpieczna aktualizacja istniejących rekordów

Modyfikuj pola i poprawnie zapisuj zmiany.

Bezpieczna aktualizacja istniejących rekordów to bezpłatna lekcja Flask Academy na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Flask Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Flask Academy zawiera 4 lekcji w sumie.

Części tej lekcji nie zostały jeszcze przetłumaczone i są wyświetlane po angielsku.

The U in CRUD

Updating means changing an existing row, not making a new one. The trick is to load the record first, then edit it. ✏️

Find Before You Change

Always fetch the target row by its id before touching it. get_or_404() loads it or stops with a clean 404.

user = User.query.get_or_404(user_id)

Edit Like a Python Object

Once loaded, just reassign its attributes. SQLAlchemy notices the change and marks the object as dirty for you.

user.name = "New Name"

Read the New Values

Updates usually carry the new data in the request body. Parse it with get_json() before applying anything.

data = request.get_json()

Apply Fields Carefully

Only overwrite fields the client actually sent. Using get() with a fallback avoids wiping values to None by accident.

user.name = data.get("name", user.name)

Commit the Change

No add() is needed for an existing row. A single commit() flushes your edits to the database.

db.session.commit()

PUT Replaces, PATCH Tweaks

Use PUT when the client sends the whole object and PATCH when it sends only the fields it wants to change.

@app.route("/users/<int:id>", methods=["PATCH"])

Validate Before Saving

Check incoming values before you commit. Reject bad data with a 400 so you never persist a broken record.

if not data.get("name"):
    return jsonify(error="name required"), 400

Roll Back if It Breaks

If the commit raises, call rollback() to discard the half-applied edit and leave the row exactly as it was.

except Exception:
    db.session.rollback()

Return the Updated Row

A good update reply sends back the fresh record with status 200, so the client sees the saved result.

return jsonify({"id": user.id, "name": user.name}), 200

Load, Edit, Commit

The whole update flow is three beats: load the row, change its attributes, then commit. No new object ever appears.

Quick Check

You changed a loaded object's attribute. What must happen for the edit to stick?

Recap: Updating Records

You load with get_or_404, apply only sent fields, validate, then commit, rolling back on errors. Safe updates unlocked! 🎉

Często zadawane pytania

Czy lekcja „Bezpieczna aktualizacja istniejących rekordów” jest bezpłatna?

Tak — pełny tekst „Bezpieczna aktualizacja istniejących rekordów” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Flask Academy, przejdź na CoddyKit PRO. Kurs Flask Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Bezpieczna aktualizacja istniejących rekordów”?

Modyfikuj pola i poprawnie zapisuj zmiany. Ćwiczysz Flask Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Flask Academy?

Nie wymagamy żadnego doświadczenia. Flask Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.

Ile czasu zajmuje lekcja „Bezpieczna aktualizacja istniejących rekordów”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Flask Academy?

Tak. Każda lekcja Flask Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Tworzenie rekordów i zatwierdzanie sesji
  2. Endpointy odczytu jednego i wielu rekordów
  3. Bezpieczna aktualizacja istniejących rekordów
  4. Usuwanie i obsługa brakujących wierszy
← Powrót do Flask Academy