Django gibt JSON zurück

Salman Mehmood 15 Februar 2024
Django gibt JSON zurück

Diese Diskussion befasst sich mit einer kurzen Einführung in das JSON-Format und konvertiert Daten in das JSON-Format mit der Klasse JsonResponse in Django.

Verwenden Sie die Klasse JsonResponse, um Daten in Django im JSON-Format zurückzugeben

JSON wird auch als JavaScript-Objektnotation bezeichnet und ist einfach eine Datendarstellung. Es wird im Internet für fast jede einzelne API verwendet.

JSON ist extrem einfach, um Daten auf der Client-Site zu senden. Es lässt sich auch sehr gut mit JavaScript integrieren.

Da JSON nur eine Obermenge von JavaScript ist, lässt es sich gut in JavaScript integrieren. Fast jede wichtige Sprache verfügt über eine Bibliothek oder integrierte Funktionen zum Parsen von JSON-Strings in Objekte oder Klassen.

Daten im JSON-Format zu übergeben ist in Django extrem einfach; Mal sehen, wie es funktioniert.

Beginnen wir mit der Erstellung eines Profile-Modells. In diesem Modell erstellen wir drei Felder name, email und bio. Diese Felder wären CharField mit 1000 max_length.

class Profile(models.Model):
    name = models.CharField(max_length=1000)
    email = models.CharField(max_length=1000)
    bio = models.CharField(max_length=1000)

Wir müssen das Modell Profile in der Datei admin.py registrieren.

from .models import Book, Profile

admin.site.register(Book)
admin.site.register(Profile)

Wir müssen eine neue URL erstellen, damit sie die Funktion json aus der Datei views.py aufruft, wenn wir auf diese URL treffen.

urlpatterns = [
    path("admin/", admin.site.urls),
    path("json", views.json, name="json"),
]

Jetzt müssen wir eine neue Funktion namens json erstellen. Zuerst müssen wir JsonResponse und andere erforderliche Module importieren.

from .models import Profile
from django.http import JsonResponse

In der json-Funktion holen wir uns mittels objects.values() Werte aus Profile-Objekten und wandeln sie in einen Listendatentyp um.

Nach dem Erstellen der Variablen data müssen wir Daten in der JSON-Antwort zurückgeben. Nachdem wir eine data-Variable in der JsonResponse-Klasse übergeben haben, müssen wir sicherstellen, dass wir das safe-Argument übergeben und es gleich False setzen.

def json(request):
    data = list(Profile.objects.values())
    return JsonResponse(data, safe=False)

Um unser Modell zu erstellen, müssen wir die Migration durchführen. Mit den folgenden Befehlen können wir unsere Modelle im Admin-Bereich sehen.

python manage.py makemigrations
python manage.py migrate

Jetzt wird alles gut funktionieren, führen Sie einfach den Server mit diesem Befehl aus und sehen Sie, was passiert.

python manage.py runserver

Wir führen den Browser aus und gehen mit dieser Adresse http://127.0.0.1:8000/admin zum Admin-Panel. Wenn wir unser Modell zum ersten Mal öffnen, müssen wir das Modell mit der Schaltfläche oben rechts hinzufügen.

Django Return JSON Output

Nach dem Ausfüllen der Felder müssen wir dieses Objekt speichern und über http://127.0.0.1:8000/json zur JSON-Seite gehen.

[
    {
    id: 1,
    name: "jeams parker",
    email: "exampl@example.com",
    bio: "This is the example bio"
    }
]

Jetzt können wir auf Daten im JSON-Format zugreifen.

Salman Mehmood avatar Salman Mehmood avatar

Hello! I am Salman Bin Mehmood(Baum), a software developer and I help organizations, address complex problems. My expertise lies within back-end, data science and machine learning. I am a lifelong learner, currently working on metaverse, and enrolled in a course building an AI application with python. I love solving problems and developing bug-free software for people. I write content related to python and hot Technologies.

LinkedIn

Verwandter Artikel - Django JSON