Εάν έχετε χρησιμοποιήσει μια ψηφιακή συσκευή για την αποστολή και λήψη πληροφοριών, έχετε χρησιμοποιήσει ένα API. Οι προγραμματιστές δημιουργούν API για να επιτρέπουν στους χρήστες να αλληλεπιδρούν με δεδομένα από τις εφαρμογές τους.

Η δημιουργία ενός REST API είναι ένας βολικός τρόπος κοινής χρήσης πληροφοριών. Τα REST API έχουν ορίσει πρότυπα που ρυθμίζουν την κοινή χρήση δεδομένων μεταξύ συσκευών. Για να κατανοήσετε πώς λειτουργούν τα REST API, μπορείτε να δημιουργήσετε ένα από την αρχή.

Μπορείτε να χρησιμοποιήσετε το πλαίσιο Django REST για να δημιουργήσετε ένα REST API και να το χρησιμοποιήσετε για να εμφανίσετε δεδομένα από μια βάση δεδομένων.

Χρήση του Django με ένα REST API

Μπορείς χρησιμοποιήστε ένα REST API για τη λήψη δομημένων δεδομένων μέσω HTTP. Όπως πολλές γλώσσες και πλαίσια, το Django σάς επιτρέπει να δημιουργήσετε το δικό σας API και να καταναλώνετε άλλα.

Θα πρέπει επίσης να έχετε προεγκατεστημένα τα ακόλουθα:

  1. Η τελευταία έκδοση του python.
  2. Η τελευταία έκδοση του pip.
  3. Pipenv (αν και μπορείτε να χρησιμοποιήσετε το venv αν θέλετε.)
  4. Η τελευταία έκδοση του Django.
instagram viewer

Αφού εγκαταστήσετε όλο το βασικό λογισμικό, είστε έτοιμοι να ξεκινήσετε.

1. Εγκαταστήστε το Django REST Framework

Πλαίσιο Django REST είναι μια ισχυρή εργαλειοθήκη που μπορείτε να χρησιμοποιήσετε για να δημιουργήσετε και να διαμορφώσετε API Ιστού. Οι προσαρμόσιμες λειτουργίες του το καθιστούν δημοφιλή επιλογή για τη δημιουργία REST API.

Μπορείτε να εγκαταστήσετε το πλαίσιο Django REST με την ακόλουθη εντολή:

pipenv εγκαθιστώ djangorestframework

2. Δημιουργήστε μια εφαρμογή Django

Οι παρακάτω οδηγίες θα εξηγήσουν πώς να δημιουργήσετε μια εφαρμογή τροφίμων για τη συλλογή ονομάτων και περιγραφών δημοφιλών φαγητών της Κένυας. Το API θα ανακτήσει αιτήματα από μια βάση δεδομένων για να επιτρέψει στους χρήστες να αλληλεπιδράσουν με αυτά τα δεδομένα.

Οι εφαρμογές Django είναι εξοπλισμένες με SQLitedatabase, ώστε να μην χρειάζεται να εγκαταστήσετε άλλη βάση δεδομένων.

Για να δημιουργήσετε μια εφαρμογή Django, δημιουργήστε πρώτα ένα έργο που ονομάζεται τροφή με την ακόλουθη εντολή:

django-admin startproject food 

Στη συνέχεια, δημιουργήστε μια εφαρμογή Django που ονομάζεταιKenyanfood:

django-admin startapp Kenyanfood

3. Καταχωρίστε τις Ρυθμίσεις Έργου Εφαρμογής

Εγγραφείτε τοKenyanfoodεφαρμογή στις ρυθμίσεις του έργου κάτω από το ΕΓΚΑΤΑΣΤΑΜΕΝΕΣ ΕΦΑΡΜΟΓΕΣ πίνακας. Εάν παραλείψετε αυτό το βήμα, το Django δεν θα αναγνωρίσει την εφαρμογή. Επίσης, καταχωρήστε το πλαίσιο Django REST στις ίδιες ρυθμίσεις:

# Ορισμός εφαρμογής

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'Kenyanfood',
'rest_framework',
]

4. Εγγραφή διευθύνσεων URL εφαρμογών

Κανω ΕΓΓΡΑΦΗ Kenyanfood διευθύνσεις URL εφαρμογών στο έργο urls.py αρχείο όπως φαίνεται παρακάτω:

από django.συνεισφορά εισαγωγή διαχειριστής
από django.urls εισαγωγή μονοπάτι, περιλαμβάνει

urlpatterns = [
μονοπάτι('διαχειριστής/', admin.site.urls),
μονοπάτι('', περιλαμβάνω('Kenyanfood.urls')),
]

5. Δημιουργήστε μια προβολή για το API

Δημιουργήστε μια εικονική προβολή στην εφαρμογή views.py αρχείο, ώστε η εφαρμογή να μην πετάει σφάλματα. Πρώτα, εισάγετε το Απάντηση αντίρρηση και@apiview διακοσμητής από το πλαίσιο Django REST.

Απάντηση βοηθά στην επιστροφή αποστειρωμένων δεδομένων JSON μορφή ενώ το @apiview εμφανίζει το API.

από django.συντομεύσεις εισαγωγή καθιστώ
από rest_framework.response εισαγωγή Απάντηση
από rest_framework.διακοσμητές εισαγωγή api_view

# Δημιουργήστε τις απόψεις σας εδώ.
@api_view(['ΠΑΙΡΝΩ'])
defΠάρε φαγητό(αίτηση):
ΕΠΙΣΤΡΟΦΗ Απάντηση()

6. Δημιουργήστε μια διαδρομή URL για την εφαρμογή

Δημιουργήστε μια διαδρομή URL για την προβολή API που δημιουργήσατε. Αυτό το τελικό σημείο εμφανίζει το Kenyanfoodδεδομένα.

από django.urls εισαγωγή μονοπάτι
από. εισαγωγή προβολές
από django.conf εισαγωγή Ρυθμίσεις

urlpatterns = [
μονοπάτι('', views.getFood),
μονοπάτι('Θέση/', views.postFood),
]

7. Δημιουργήστε ένα μοντέλο για την εφαρμογή

Η κλάση μοντέλου της εφαρμογής ονομάζεται Τροφή. Θα πρέπει να μοιάζει με αυτό:

από django.db εισαγωγή μοντέλα

# Δημιουργήστε τα μοντέλα σας εδώ.
τάξηΤροφή(μοντέλα. Μοντέλο):
όνομα = μοντέλα. CharField (max_length=200)
περιγραφή = μοντέλα. CharField (max_length=500)

Καταχωρίστε το μοντέλο στην εφαρμογή admin.py αρχείο όπως φαίνεται παρακάτω:

από django.συνεισφορά εισαγωγή διαχειριστής
από .μοντέλα εισαγωγή Τροφή

# Καταχωρίστε τα μοντέλα σας εδώ.
διαχειριστής.ιστοσελίδα.κανω ΕΓΓΡΑΦΗ(Τροφή)

8. Κάντε μετανάστευση

Επόμενο, αποδημώ την εφαρμογή για τη δημιουργία πινάκων στο SQLite βάση δεδομένων. Μπορείτε να το κάνετε αυτό χρησιμοποιώντας την ακόλουθη εντολή:

Πύθωνδιαχειρίζονται.pyμεταναστεύσειςKenyanfood

Στη συνέχεια, εφαρμόστε αυτές τις μετεγκαταστάσεις εκτελώντας αυτήν την εντολή:

Πύθωνδιαχειρίζονται.pyαποδημώ

Μια επιτυχημένη μετεγκατάσταση θα μοιάζει με αυτό:

Οι επιτυχείς μετεγκαταστάσεις σημαίνουν ότι η βάση δεδομένων έχει δημιουργήσει πίνακες για το KenyanfoodApp.

9. Προσθήκη δεδομένων στη βάση δεδομένων

Χρησιμοποιήστε το Διαχειριστής Django GUI για την εισαγωγή δεδομένων στη βάση δεδομένων. Διαχειριστής Django έχει μια εξαιρετική διεπαφή για την οπτικοποίηση και τη διαχείριση των δεδομένων της εφαρμογής σας.

Εναλλακτικά, μπορείτε να χρησιμοποιήσετε το κέλυφος python στη γραμμή εντολών για να εισάγετε δεδομένα με μη αυτόματο τρόπο στη βάση δεδομένων. Σε αυτόν τον οδηγό, θα χρησιμοποιήσετε τη διεπαφή διαχειριστή του Django.

Χρησιμοποιήστε την ακόλουθη εντολή για να ρυθμίσετε τον διαχειριστή του Django:

Πύθωνδιαχειρίζονται.pyδημιουργία υπερχρήστη

Όταν σας ζητηθεί, εισαγάγετε τη δική σας όνομα χρήστη, email και κωδικό πρόσβασης. Στη συνέχεια, μπορείτε να ανοίξετε τη σελίδα διαχειριστή χρησιμοποιώντας τον παρακάτω σύνδεσμο:

http://127.0.0.1:8000/admin/

Θα δείτε τη σελίδα σύνδεσης:

Μόλις συνδεθείτε, θα δείτε τη διεπαφή διαχείρισης του Django με Ομάδες και Χρήστες μοντέλο. Αυτά είναι και τα δύο για έλεγχο ταυτότητας. ο Τροφή μοντέλο βρίσκεται στην παρακάτω ενότητα.

Μπορείτε να προσθέσετε και να διαγράψετε Τροφή στοιχεία από τη βάση δεδομένων από τη σελίδα διαχειριστή. Προσθέστε μερικές λιχουδιές της Κένυας, όπως το Ugali, το Pilau και το Chai, στη βάση δεδομένων.

Τώρα που η βάση δεδομένων έχει δεδομένα, δημιουργήστε το API

10. Σειροποίηση του μοντέλου

Serializers μετατροπή σύνθετων μοντέλων Django σε JSON αντικείμενα, κάνοντας τα δεδομένα να διαβάζονται εύκολα στο API. Η σειριοποίηση κάνει τα δεδομένα πιο ευανάγνωστα στο API.

Δημιουργήστε ένα νέο αρχείο στην εφαρμογή που ονομάζεται serializer.py

από rest_framework εισαγωγή σειριακούς
από .μοντέλα εισαγωγή Τροφή

τάξηFoodSerializer(σειριοποιητές. ModelSerializer):
τάξηΜετα:
μοντέλο=Τροφή
πεδία=('όνομα','περιγραφή')

Εισάγετε το σειριακούς ενότητα από το rest_framework συσκευάστε και δημιουργήστε ένα FoodSerializer κλάση που κληρονομεί από το ModelSerializer τάξη.

Στη συνέχεια, καθορίστε το Τροφή μοντέλο που θέλετε να σειριοποιήσετε και τα πεδία που θέλετε να προσθέσετε στο API.

11. Ενημερώστε την Προβολή

Στη συνέχεια, ενημερώστε την προβολή API με το σειριοποιητής και Τροφή μοντέλα.

Πρώτα, ορίστε α ΠΑΙΡΝΩ μέθοδος ανάκτησης όλων των δεδομένων από τη βάση δεδομένων με Τροφή. Objects.all() λειτουργία. Στη συνέχεια, σειριοποιήστε τα δεδομένα και τα επέστρεψε ως απάντηση JSON μορφή.

από django.συντομεύσεις εισαγωγή καθιστώ
από rest_framework.response εισαγωγή Απάντηση
από rest_framework.διακοσμητές εισαγωγή api_view
από .μοντέλα εισαγωγή Τροφή
από .σειριοποιητής εισαγωγή FoodSerializer

# Δημιουργήστε τις απόψεις σας εδώ.
@api_view(['ΠΑΙΡΝΩ'])
defΠάρε φαγητό(αίτηση):
food = Food.objects.all()
serializer = FoodSerializer (food, many=Αληθής)
ΕΠΙΣΤΡΟΦΗ Απόκριση (serializer.data)

Στη συνέχεια, μεταβείτε στον σύνδεσμο URL του διακομιστή:

https://127.0.0.1:8000/

Θα δείτε το API που εμφανίζει δεδομένα από τη βάση δεδομένων:

Συγχαρητήρια, δημιουργήσατε ένα REST API!

12. Προσθήκη δεδομένων με τη μέθοδο POST

Ελέγξτε εάν μπορείτε να χρησιμοποιήσετε το REST API για να προσθέσετε δεδομένα στη βάση δεδομένων.

Πρώτα, ορίστε α ΘΕΣΗ μέθοδος στην προβολή.

@api_view(['ΘΕΣΗ'])
defμετά το φαγητό(αίτηση):
serializer = FoodSerializer (data=request.data)
ανσειριοποιητής.είναι έγκυρο():
σειριοποιητής.αποθηκεύσετε()
ΕΠΙΣΤΡΟΦΗ Απόκριση (serializer.data)

Στη συνέχεια, προσθέστε μια διαδρομή στην εφαρμογή urls.py για να δημιουργήσετε ένα τελικό σημείο για το API ΘΕΣΗ λειτουργικότητα.

urlpatterns = [
μονοπάτι('',views.getFood),
μονοπάτι('Θέση/',views.postFood),
]

Στη συνέχεια, πλοηγηθείτε σε αυτήν τη διεύθυνση URL:

https://127.0.0.1:8000/post

Θα δείτε το ΘΕΣΗ τελικό σημείο. Προσθήκη δεδομένων στη βάση δεδομένων στο JSON μορφή στο Περιεχόμενο ενότητα και κάντε κλικ στο ΘΕΣΗ κουμπί. Για παράδειγμα, προσθέστε ένα νέο τρόφιμο με αυτήν τη δομή:

{ "όνομα":"Maziwa mala", "περιγραφή":"Ξινόγαλα" }

Θα δείτε τα δεδομένα να εμφανίζονται με κόκκινο χρώμα στο JSON μορφή.

Τώρα, εάν πλοηγηθείτε πίσω στο ΠΑΙΡΝΩ τελικό σημείο http://127.0.0.1:8000/, θα δεις το φαγητόMaziwa mala, και προστέθηκε η περιγραφή του.

Τώρα έχετε ένα REST API που μπορεί να εμφανίζει και να προσθέτει στοιχεία στην εφαρμογή. Τι θα λέγατε να πειραματιστείτε με άλλους CRUD μεθόδους; Δουλεύοντας με ΕΚΣΥΓΧΡΟΝΙΖΩ και ΔΙΑΓΡΑΦΩ οι μέθοδοι θα αυξήσουν τη λειτουργικότητα του REST API σας.

Πώς να δημιουργήσετε ένα REST API με το Django

Τώρα μπορείτε να δημιουργήσετε ένα REST API χρησιμοποιώντας το Django. Πρώτα, δημιουργήστε μια εφαρμογή με ένα μοντέλο, Σειριοποιήστε τα δεδομένα και δημιουργήστε μια λειτουργία προβολής. Στη συνέχεια, συμπεριλάβετε τελικά σημεία URL για να οπτικοποιήσετε τα δεδομένα σε μορφή JSON.

Η δημιουργία API REST με το πλαίσιο Django REST είναι ένας βολικός τρόπος για να μοιράζεστε δεδομένα και να προσφέρετε στους χρήστες σας μια εξαιρετική εμπειρία πελάτη.