Ha digitális eszközt használt információk küldésére és fogadására, akkor API-t használt. A fejlesztők API-kat hoznak létre, hogy lehetővé tegyék a felhasználók számára az alkalmazásaikból származó adatokkal való interakciót.
A REST API létrehozása kényelmes módja az információk megosztásának. A REST API-k meghatározott szabványokkal rendelkeznek az eszközök közötti adatmegosztásra. A REST API-k működésének megértéséhez létrehozhat egyet a semmiből.
Használhatja a Django REST keretrendszert egy REST API létrehozására és az adatbázisból származó adatok megjelenítésére.
A Django használata REST API-val
tudsz használjon REST API-t a strukturált adatok lekéréséhez HTTP-n keresztül. Sok nyelvhez és keretrendszerhez hasonlóan a Django is lehetővé teszi saját API létrehozását és mások felhasználását.
A következőket is előre telepíteni kell:
- A python legújabb verziója.
- A pip legújabb verziója.
- Pipenv (bár használhatja helyette a venv-t, ha akarja.)
- A Django legújabb verziója.
Miután telepítette az összes lényeges szoftvert, készen áll a kezdésre.
1. Telepítse a Django REST Framework-et
Django REST keretrendszer egy hatékony eszköztár, amellyel webes API-kat hozhat létre és konfigurálhat. Testreszabható funkciói népszerűvé teszik a REST API-k építését.
A Django REST keretrendszert a következő paranccsal telepítheti:
pipenv telepítés djangorest keretrendszer
2. Hozzon létre egy Django alkalmazást
A következő utasítások elmagyarázzák, hogyan hozhat létre élelmiszer-alkalmazást a népszerű kenyai ételek nevének és leírásának összegyűjtésére. Az API kéréseket kér le egy adatbázisból, hogy lehetővé tegye a felhasználók számára az adatokkal való interakciót.
A Django alkalmazások SQLite-adatbázissal vannak felszerelve, így nem kell másik adatbázist telepítenie.
Django alkalmazás létrehozásához először hozzon létre egy projektet étel a következő paranccsal:
django-admin startproject étel
Ezután hozzon létre egy Django alkalmazástkenyai étel:
django-admin startapp kenyanfood
3. Regisztrálja az alkalmazásprojekt beállításait
Regisztrálja akenyai ételalkalmazást a projektbeállítások alatt TELEPÍTETT ALKALMAZÁSOK sor. Ha kihagyja ezt a lépést, a Django nem ismeri fel az alkalmazást. Ezenkívül regisztrálja a Django REST keretrendszert ugyanazokban a beállításokban:
# Alkalmazás meghatározása
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'kenyai étel',
'rest_framework',
]
4. Alkalmazás URL-ek regisztrálása
Regisztráció kenyai étel alkalmazás URL-jei a projektben urls.py fájl az alábbi ábrán látható módon:
tól től django.contrib import admin
tól től django.urls import út, tartalmazza
urlpatterns = [
pálya('admin/', admin.site.urls),
pálya('', include('kenyanfood.urls')),
]
5. Hozzon létre egy nézetet az API-hoz
Hozzon létre egy álnézetet az alkalmazásban views.py fájlt, így az alkalmazás nem dob hibát. Először importálja a Válasz kifogást és@apiview dekorátor a Django REST keretrendszerből.
Válasz segít visszaküldeni a sterilizált adatokat JSON formátum, míg a @apiview megjeleníti az API-t.
tól től django.parancsikonok import Vakol
tól től rest_framework.response import Válasz
tól től rest_framework.decorators import api_view
# Itt hozhatja létre nézeteit.
@api_view(['KAP'])
defkap Food(kérés):
Visszatérés Válasz()
6. Hozzon létre egy URL elérési utat az alkalmazáshoz
Hozzon létre egy URL-útvonalat a létrehozott API-nézethez. Ez a végpont megjeleníti a kenyai ételadat.
tól től django.urls import pálya
tól től. import nézetek
tól től django.conf import beállítások
urlpatterns = [
pálya('', views.getFood),
pálya('post/', views.postFood),
]
7. Hozzon létre egy modellt az alkalmazáshoz
Az alkalmazás modellosztályát ún Étel. Így kell kinéznie:
tól től django.db import modellek
# Készítse el modelljeit itt.
osztályÉtel(modellek. Modell):
név = modellek. CharField (max_length=200)
leírás = modellek. CharField (max_length=500)
Regisztrálja a modellt az alkalmazásban admin.py fájl az alábbiak szerint:
tól től django.contrib import admin
tól től .modellek import Étel
# Itt regisztrálhatja modelljeit.
admin.webhely.Regisztráció(Étel)
8. Migrációk végrehajtása
Következő, vándorol az alkalmazás táblázatok létrehozásához a SQLite adatbázis. Ezt a következő paranccsal teheti meg:
pitonkezelni.pyvándorlásokat tesznekkenyai étel
Ezután alkalmazza ezeket az áttelepítéseket a következő parancs futtatásával:
pitonkezelni.pyvándorol
A sikeres migráció így fog kinézni:
A sikeres migráció azt jelenti, hogy az adatbázis táblákat hozott létre a kenyai ételApp.
9. Adatok hozzáadása az adatbázishoz
Használja a Django adminisztrátor GUI adatok beviteléhez az adatbázisba. Django adminisztrátor nagyszerű felülettel rendelkezik az alkalmazás adatainak megjelenítéséhez és kezeléséhez.
Alternatív megoldásként használhatja a python shellt a parancssorban az adatok manuális beviteléhez az adatbázisba. Ebben az útmutatóban a Django adminisztrátori felületét fogja használni.
Használja a következő parancsot a Django admin beállításához:
pitonkezelni.pyszuperfelhasználót hoz létre
Amikor a rendszer kéri, írja be a saját felhasználónév, email cím és jelszó. Ezután megnyithatja az adminisztrációs oldalt az alábbi linken:
http://127.0.0.1:8000/admin/
Látni fogja a bejelentkezési oldalt:
Miután bejelentkezett, látni fogja a Django adminisztrációs felületét Csoportok és Felhasználók modell. Mindkettő hitelesítésre szolgál; a Étel modell az alábbi részben.
Hozzáadhat és törölhet Étel elemeket az adatbázisból az adminisztrációs oldalról. Adjon hozzá néhány kenyai finomságot, például Ugalit, Pilau-t és Chai-t az adatbázishoz.
Most, hogy az adatbázis rendelkezik adatokkal, hozza létre az API-t
10. Sorolja fel a modellt
Sorozatkészítők átalakítani az összetett Django modelleket JSON objektumok, így az adatok könnyen olvashatók az API-n. A sorosítással az adatok olvashatóbbá válnak az API-n.
Hozzon létre egy új fájlt a nevű alkalmazásban serializer.py
tól től rest_framework import sorozatkészítők
tól től .modellek import Étel
osztályFoodSerializer(sorosítók. ModelSerializer):
osztályMeta:
modell=Étel
mezők=('név','leírás')
Ön importálja a sorozatkészítők modul a rest_framework csomagolja be és hozzon létre a FoodSerializer osztályból öröklődik ModelSerializer osztály.
Ezután adja meg a Étel a szerializálni kívánt modellt és az API-hoz hozzáadni kívánt mezőket.
11. Frissítse a Nézetet
Ezután frissítse az API nézetet a szerializáló és Étel modellek.
Először határozza meg a KAP módszerrel lekérheti az összes adatot az adatbázisból Étel. Objects.all() funkció. Ezután sorba rendezze az adatokat, és válaszként küldje vissza JSON formátum.
tól től django.parancsikonok import Vakol
tól től rest_framework.response import Válasz
tól től rest_framework.decorators import api_view
tól től .modellek import Étel
tól től .serializer import FoodSerializer
# Itt hozhatja létre nézeteit.
@api_view(['KAP'])
defkap Food(kérés):
étel = Food.objects.all()
serializer = FoodSerializer (étel, sok=Igaz)
Visszatérés Válasz (serializer.data)
Ezután lépjen a szerver URL-címére:
https://127.0.0.1:8000/
Látni fogja, hogy az API adatokat jelenít meg az adatbázisból:
Gratulálunk, létrehozta a REST API-t!
12. Adatok hozzáadása POST módszerrel
Tesztelje, hogy használhatja-e a REST API-t adatok hozzáadásához az adatbázishoz.
Először határozza meg a POST módszer a nézetben.
@api_view(['POST'])
defpostFood(kérés):
serializer = FoodSerializer (data=request.data)
haszerializáló.érvényes():
szerializáló.megment()
Visszatérés Válasz (serializer.data)
Ezután adjon hozzá egy elérési utat az alkalmazásban urls.py végpont létrehozásához az API-hoz POST funkcionalitás.
urlpatterns = [
pálya('',views.getFood),
pálya('post/',views.postFood),
]
Ezután navigáljon erre az URL-re:
https://127.0.0.1:8000/post
Látni fogja a POST végpont. Adjon hozzá adatokat az adatbázishoz JSON formátumban a Tartalom szakaszt, és kattintson a POST gomb. Például adjon hozzá egy új élelmiszert a következő szerkezettel:
{ "név":"Maziwa mala", "leírás":"Aludt tej" }
Az adatok piros színnel jelennek meg JSON formátum.
Most, ha visszanavigál a KAP végpont http://127.0.0.1:8000/, látni fogod az ételtMaziwa mala,' és leírása hozzáadva.
Most már rendelkezik egy REST API-val, amely képes megjeleníteni és elemeket hozzáadni az alkalmazáshoz. Mit szólnál, ha másokkal kísérleteznél CRUD mód? Dolgozni vele FRISSÍTÉS és TÖRÖL módszerek növelik a REST API funkcionalitását.
Hogyan hozzunk létre REST API-t a Django segítségével
Most már létrehozhat egy REST API-t a Django segítségével. Először hozzon létre egy alkalmazást egy modellel, sorosítsa az adatokat, és hozzon létre egy nézet funkciót. Ezután vegyen fel URL-végpontokat az adatok JSON formátumban való megjelenítéséhez.
A REST API-k építése a Django REST keretrendszerrel kényelmes módja az adatok megosztásának, és nagyszerű felhasználói élmény biztosításának.