Dacă ați folosit un dispozitiv digital pentru a trimite și a primi informații, ați folosit un API. Dezvoltatorii creează API-uri pentru a permite utilizatorilor să interacționeze cu datele din aplicațiile lor.
Crearea unui API REST este o modalitate convenabilă de a partaja informații. API-urile REST au standarde definite care reglementează partajarea datelor între dispozitive. Pentru a înțelege cum funcționează API-urile REST, puteți crea una de la zero.
Puteți utiliza cadrul Django REST pentru a construi un API REST și îl puteți utiliza pentru a afișa date dintr-o bază de date.
Utilizarea Django cu un API REST
Puteți utilizați un API REST pentru a prelua date structurate prin HTTP. La fel ca multe limbi și cadre, Django vă permite să vă creați propriul API și să utilizați altele.
De asemenea, ar trebui să aveți următoarele preinstalate:
- Cea mai recentă versiune de python.
- Cea mai recentă versiune de pip.
- Pipenv (deși puteți folosi în schimb venv dacă doriți.)
- Cea mai recentă versiune de Django.
După ce ați instalat toate software-urile esențiale, sunteți gata să începeți.
1. Instalați Django REST Framework
Cadrul Django REST este un set de instrumente puternic pe care îl puteți folosi pentru a construi și configura API-uri web. Caracteristicile sale personalizabile fac din aceasta o alegere populară pentru a construi API-uri REST.
Puteți instala cadrul Django REST cu următoarea comandă:
pipenv instalare djangorestframework
2. Creați o aplicație Django
Următoarele instrucțiuni vă vor explica cum să creați o aplicație alimentară pentru a aduna nume și descrieri ale alimentelor populare din Kenya. API-ul va prelua cereri dintr-o bază de date pentru a permite utilizatorilor să interacționeze cu acele date.
Aplicațiile Django sunt echipate cu o bază de date SQLite, astfel încât nu trebuie să instalați o altă bază de date.
Pentru a crea o aplicație Django, creați mai întâi un proiect numit alimente cu următoarea comandă:
django-admin startproject food
Apoi, creați o aplicație Django numitămâncare kenyană:
django-admin startapp kenyanfood
3. Înregistrați setările proiectului pentru aplicație
Înregistrațimâncare kenyanăaplicația în setările proiectului sub APLICAȚII INSTALATE matrice. Dacă săriți peste acest pas, Django nu va recunoaște aplicația. De asemenea, înregistrați cadrul Django REST în aceleași setări:
# Definiția aplicației
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'mâncare kenyană',
'rest_framework',
]
4. Înregistrați adresele URL ale aplicațiilor
Inregistreaza-te mâncare kenyană URL-urile aplicației din proiect urls.py fișier așa cum este ilustrat mai jos:
din django.contrib import admin
din django.urls import cale, include
urlpatterns = [
cale('admin/', admin.site.urls),
cale('', include('kenyanfood.urls')),
]
5. Creați o vizualizare pentru API
Creați o vizualizare inactivă în aplicația vederi.py fișier, astfel încât aplicația nu aruncă erori. În primul rând, importați Raspuns obiectand@apiview decorator din cadrul Django REST.
Raspuns ajută la returnarea datelor sterilizate în JSON format în timp ce @apiview afișează API-ul.
din django.comenzi rapide import face
din rest_framework.response import Raspuns
din rest_framework.decoratori import api_view
# Creați-vă vederile aici.
@api_view(['OBȚINE'])
defgetFood(cerere):
întoarcere Raspuns()
6. Creați o cale URL pentru aplicație
Creați o cale URL pentru vizualizarea API pe care ați creat-o. Acest punct final afișează mâncare kenyanădate.
din django.urls import cale
din. import vederi
din django.conf import setări
urlpatterns = [
cale('', views.getFood),
cale('post/', views.postFood),
]
7. Creați un model pentru aplicație
Clasa de model a aplicației este numită Alimente. Ar trebui să arate așa:
din django.db import modele
# Creați-vă modelele aici.
clasăAlimente(modele. Model):
nume = modele. CharField (lungime_max.=200)
descriere = modele. CharField (lungime_max.=500)
Înregistrați modelul în aplicație admin.py fișier așa cum se arată mai jos:
din django.contrib import admin
din .modele import Alimente
# Înregistrați-vă modelele aici.
admin.site.Inregistreaza-te(Alimente)
8. Faceți migrații
Următorul, migra aplicația pentru a crea tabele în SQLite Bază de date. Puteți face acest lucru folosind următoarea comandă:
pitonadministra.pyface migrațiimâncare kenyană
Apoi, aplicați aceste migrări rulând această comandă:
pitonadministra.pymigra
O migrare reușită va arăta astfel:
Migrațiile reușite înseamnă că baza de date a creat tabele pentru mâncare kenyanăApp.
9. Adăugați date la baza de date
Folosește administrator Django GUI pentru a introduce date în baza de date. administrator Django are o interfață excelentă pentru a vizualiza și gestiona datele aplicației dvs.
Alternativ, puteți utiliza shell-ul python pe linia de comandă pentru a introduce datele manual în baza de date. În acest ghid, veți folosi interfața de administrare Django.
Utilizați următoarea comandă pentru a configura Django admin:
pitonadministra.pycreatesuperuser
Când vi se solicită, introduceți dvs nume de utilizator, e-mail și parolă. Apoi puteți deschide pagina de administrare folosind linkul de mai jos:
http://127.0.0.1:8000/admin/
Veți vedea pagina de autentificare:
Odată ce vă conectați, veți vedea interfața de administrare Django cu Grupuri și Utilizatori model. Acestea sunt ambele pentru autentificare; cel Alimente modelul este în secțiunea de mai jos.
Puteți adăuga și șterge Alimente articole din baza de date din pagina de administrare. Adăugați câteva delicatese kenyene, cum ar fi Ugali, Pilau și Chai, în baza de date.
Acum că baza de date are date, creați API-ul
10. Serializați modelul
Serializatoare converti modele complexe Django în JSON obiecte, făcând datele ușor de citit în API. Serializarea face datele mai lizibile în API.
Creați un fișier nou în aplicația numită serializator.py
din rest_framework import serializatoare
din .modele import Alimente
clasăSerializator de alimente(serializatoare. ModelSerializer):
clasăMeta:
model=Mâncare
câmpuri=('Nume','Descriere')
Tu importi serializatoare modul din rest_framework împachetați și creați un Serializator de alimente clasa care moşteneşte de la ModelSerializer clasă.
Apoi, specificați Alimente modelul pe care doriți să îl serializați și câmpurile pe care doriți să le adăugați la API.
11. Actualizați vizualizarea
Apoi, actualizați vizualizarea API cu serializator și Alimente modele.
Mai întâi, definiți a OBȚINE metoda de a prelua toate datele din baza de date cu Alimente. Objects.all() funcţie. Apoi serializați datele și le-ați returnat ca răspuns în JSON format.
din django.comenzi rapide import face
din rest_framework.response import Raspuns
din rest_framework.decoratori import api_view
din .modele import Alimente
din .serializator import Serializator de alimente
# Creați-vă vederile aici.
@api_view(['OBȚINE'])
defgetFood(cerere):
mâncare = Food.objects.all()
serializator = FoodSerializer (alimente, multe=Adevărat)
întoarcere Răspuns (serializer.data)
Apoi, navigați la linkul URL al serverului:
https://127.0.0.1:8000/
Veți vedea API-ul afișând date din baza de date:
Felicitări, ați creat un API REST!
12. Adăugați date cu metoda POST
Testați dacă puteți utiliza API-ul REST pentru a adăuga date la baza de date.
Mai întâi, definiți a POST metoda în vedere.
@api_view(['POST'])
defpostMâncare(cerere):
serializator = FoodSerializer (data=request.data)
dacăserializator.este valabil():
serializator.Salvați()
întoarcere Răspuns (serializer.data)
Apoi, adăugați o cale în aplicație urls.py pentru a crea un punct final pentru API POST funcţionalitate.
urlpatterns = [
cale('',views.getFood),
cale('post/',views.postFood),
]
Apoi, navigați la această adresă URL:
https://127.0.0.1:8000/post
Vei vedea POST punct final. Adăugați date în baza de date în JSON format în Conţinut secțiunea și faceți clic pe POST buton. De exemplu, adăugați un nou produs alimentar cu această structură:
{ "Nume":"Maziwa mala", "Descriere":"Lapte acru" }
Veți vedea datele afișate cu roșu în JSON format.
Acum, dacă navigați înapoi la OBȚINE punctul final http://127.0.0.1:8000/, vei vedea mâncareaMaziwa mala,’ și descrierea sa adăugată.
Acum aveți o API REST care poate afișa și adăuga elemente în aplicație. Ce zici de a experimenta cu altele CRUD metode? Lucrând cu ACTUALIZAȚI și ȘTERGE metodele vor crește funcționalitatea API-ului dvs. REST.
Cum se creează un API REST cu Django
Acum puteți crea un API REST folosind Django. Mai întâi, creați o aplicație cu un model, serializați datele și creați o funcție de vizualizare. Apoi, includeți punctele finale URL pentru a vizualiza datele în format JSON.
Crearea de API-uri REST cu cadrul Django REST este o modalitate convenabilă de a partaja date și de a oferi utilizatorilor o experiență excelentă pentru clienți.