0Pricing
Django Academy · Lektion

Serializers: Model zu JSON

Objekte in JSON umwandeln und aus JSON erstellen

Serializers: Model zu JSON ist eine kostenlose Django Academy-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Django Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Django Academy-Kurs umfasst insgesamt 4 Lektionen.

Teile dieser Lektion wurden noch nicht übersetzt und werden auf Englisch angezeigt.

The Translator Layer

A serializer is DRF's translator: it converts your model instances into JSON to send out, and parses incoming JSON back into Python.

Why Not Just json.dumps?

Raw json.dumps cannot handle model objects or validation. A serializer understands fields, types, and rules, so it does the heavy lifting for you.

Meet ModelSerializer

The fastest start is ModelSerializer: point it at a model and it generates matching fields automatically, just like a ModelForm does.

from rest_framework import serializers

Declare One

You subclass ModelSerializer and use an inner Meta class to name the model and the fields you want exposed in the API.

class BookSerializer(serializers.ModelSerializer):
    class Meta:
        model = Book
        fields = ['id', 'title']

Choosing Fields

List fields explicitly or use fields = '__all__' to include them all. Being explicit is safer because it never leaks new columns by accident.

Serialize to JSON

Pass an instance to the serializer and read its .data attribute to get a ready-to-render Python dict of plain JSON-friendly values.

ser = BookSerializer(book)
ser.data  # {'id': 1, 'title': 'Dune'}

Many Objects at Once

To serialize a whole queryset, add many=True and DRF returns a list of dicts, one per object, in a single step.

BookSerializer(books, many=True).data

Deserialize Input

Going the other way, you pass data= with incoming JSON so the serializer can parse and later validate what a client sent.

ser = BookSerializer(data=request.data)

Validate It

Call is_valid() before trusting input. It runs every field's checks and fills validated_data, or populates errors you can return.

ser.is_valid()
ser.errors

Save Cleanly

Once valid, save() creates or updates the model instance, so a serializer handles both translation and persistence in one object.

ser.save()

Forms, but for APIs

Think of a serializer as a form for APIs: it renders data out, validates data in, and saves it, all without any HTML at all.

Quick Check

What does .data give you on a model serializer?

Recap: Serializers

You learned that a ModelSerializer turns models into JSON, validates incoming data, and saves it, acting as the bridge of your API. 🔁

Häufig gestellte Fragen

Ist die Lektion „Serializers: Model zu JSON“ kostenlos?

Ja — der vollständige Text von „Serializers: Model zu JSON“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Django Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Django Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Serializers: Model zu JSON“?

Objekte in JSON umwandeln und aus JSON erstellen Du übst Django Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Django Academy zu starten?

Keine Vorkenntnisse erforderlich. Django Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.

Wie lange dauert die Lektion „Serializers: Model zu JSON“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Django Academy-Lektion Code schreiben und ausführen?

Ja. Jede Django Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. DRF installieren und konfigurieren
  2. Serializers: Model zu JSON
  3. APIView und die Funktion @api_view
  4. Die browsable API und Statuscodes
← Zurück zu Django Academy