Jei informacijai siųsti ir gauti naudojote skaitmeninį įrenginį, naudojote API. Kūrėjai kuria API, kad vartotojai galėtų sąveikauti su duomenimis iš savo programų.

REST API sukūrimas yra patogus būdas dalytis informacija. REST API turi apibrėžtus standartus, reglamentuojančius dalijimąsi duomenimis tarp įrenginių. Norėdami suprasti, kaip veikia REST API, galite sukurti ją nuo nulio.

Galite naudoti Django REST sistemą, kad sukurtumėte REST API ir rodytumėte duomenis iš duomenų bazės.

Django naudojimas su REST API

Tu gali naudokite REST API, kad gautumėte struktūrinius duomenis per HTTP. Kaip ir daugelis kalbų ir sistemų, „Django“ leidžia kurti savo API ir naudoti kitas.

Taip pat turėtumėte iš anksto įdiegti šiuos dalykus:

  1. Naujausia python versija.
  2. Naujausia pip versija.
  3. Pipenv (nors galite naudoti venv, jei norite).
  4. Naujausia Django versija.

Įdiegę visą būtiną programinę įrangą, būsite pasiruošę pradėti.

1. Įdiekite „Django REST Framework“.

Django REST sistema yra galingas įrankių rinkinys, kurį galite naudoti kurdami ir konfigūruodami žiniatinklio API. Dėl pritaikomų funkcijų jis yra populiarus pasirinkimas kuriant REST API.

instagram viewer

„Django REST“ sistemą galite įdiegti naudodami šią komandą:

pipenv diegti djangorestframework

2. Sukurkite „Django“ programą

Šiose instrukcijose bus paaiškinta, kaip sukurti maisto programą, kad būtų galima surinkti populiarių Kenijos maisto produktų pavadinimus ir aprašymus. API gaus užklausas iš duomenų bazės, kad vartotojai galėtų sąveikauti su tais duomenimis.

„Django“ programose yra SQLite duomenų bazė, todėl jums nereikia diegti kitos duomenų bazės.

Norėdami sukurti „Django“ programą, pirmiausia sukurkite projektą pavadinimu maistas su tokia komanda:

django-admin startproject maistas 

Tada sukurkite „Django“ programą, vadinamąKenijos maistas:

django-admin startapp kenyanfood

3. Užregistruokite programos projekto nustatymus

UžregistruokiteKenijos maistasprogramėlę projekto nustatymuose ĮDIEGtos PROGRAMOS masyvas. Jei praleisite šį veiksmą, „Django“ neatpažins programos. Taip pat užregistruokite „Django REST“ sistemą tuose pačiuose nustatymuose:

# Programos apibrėžimas

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'Kenijos maistas',
'poilsio_rėmas',
]

4. Užregistruokite programos URL

Registruotis Kenijos maistas projekte esančių programų URL urls.py failą, kaip parodyta žemiau:

 django.contrib importuoti admin
django.urls importuoti kelias, įtraukti

urlpatterns = [
kelias ('admin/', admin.site.urls),
kelias ('', įtraukti ('kenyanfood.urls')),
]

5. Sukurkite API rodinį

Programoje sukurkite netikrą rodinį views.py failą, todėl programėlė neišmes klaidų. Pirma, importuokite Atsakymas prieštarauti ir@apiview dekoratorius iš Django REST karkaso.

Atsakymas padeda grąžinti sterilizuotus duomenis JSON formatu, o @apiview rodo API.

 django.shortcuts importuoti pateikti
rest_framework.response importuoti Atsakymas
rest_framework.decorators importuoti api_view

# Sukurkite savo rodinius čia.
@api_view(['GAUTI'])
defgautiFood(užklausa):
grąžinti Atsakymas ()

6. Sukurkite programos URL kelią

Sukurkite sukurto API rodinio URL kelią. Šis galutinis taškas rodo Kenijos maistasduomenis.

 django.urls importuoti kelias
. importuoti Peržiūros
django.conf importuoti nustatymus

urlpatterns = [
kelias ('', views.getFood),
kelias ('paštas/', views.postFood),
]

7. Sukurkite programos modelį

Programos modelio klasė vadinama Maistas. Tai turėtų atrodyti taip:

 django.db importuoti modeliai

# Sukurkite savo modelius čia.
klasėMaistas(modeliai. Modelis):
pavadinimas = modeliai. CharField (maks._ilgis = 200)
aprašymas = modeliai. CharField (maks._ilgis = 500)

Užregistruokite modelį programėlėje admin.py failą, kaip parodyta žemiau:

 django.contrib importuoti admin
.modeliai importuoti Maistas

# Užregistruokite savo modelius čia.
admin.svetainė.Registruotis(Maistas)

8. Atlikite migracijas

Kitas, migruoti programa, skirta lentelėms kurti SQLite duomenų bazėje. Tai galite padaryti naudodami šią komandą:

pitonasvaldyti.pydaro migracijasKenijos maistas

Tada pritaikykite šiuos perkėlimus vykdydami šią komandą:

pitonasvaldyti.pymigruoti

Sėkmingas perkėlimas atrodys taip:

Sėkmingas perkėlimas reiškia, kad duomenų bazė sukūrė lenteles Kenijos maistasProgramėlė

9. Pridėti duomenis į duomenų bazę

Naudoti Django administratorius GUI duomenims į duomenų bazę įvesti. Django administratorius turi puikią sąsają, leidžiančią vizualizuoti ir valdyti programos duomenis.

Arba galite naudoti python apvalkalą komandinėje eilutėje, kad rankiniu būdu įvestumėte duomenis į duomenų bazę. Šiame vadove naudosite „Django“ administratoriaus sąsają.

Norėdami nustatyti Django admin, naudokite šią komandą:

pitonasvaldyti.pysukurti supervartotoją

Kai būsite paraginti, įveskite savo vartotojo vardą, el. pašto adresą ir slaptažodį. Tada galite atidaryti administratoriaus puslapį naudodami toliau pateiktą nuorodą:

http://127.0.0.1:8000/admin/

Pamatysite prisijungimo puslapį:

Prisijungę pamatysite Django administravimo sąsają su Grupės ir Vartotojai modelis. Jie abu skirti autentifikavimui; į Maistas modelis yra žemiau esančiame skyriuje.

Galite pridėti ir ištrinti Maistas elementus iš duomenų bazės iš administratoriaus puslapio. Į duomenų bazę įtraukite keletą Kenijos skanėstų, tokių kaip Ugali, Pilau ir Chai.

Dabar, kai duomenų bazėje yra duomenų, sukurkite API

10. Serializuoti modelį

Serializatoriai konvertuoti sudėtingus Django modelius į JSON objektai, todėl duomenys lengvai nuskaitomi API. Serializavimas leidžia geriau skaityti duomenis API.

Sukurkite naują failą programoje, pavadintoje serializer.py

 poilsio_rėmas importuoti serializatoriai
.modeliai importuoti Maistas

klasėFoodSerializer(serializatoriai. ModelSerializer):
klasėMeta:
modelis=Maistas
laukai=('vardas','apibūdinimas')

Jūs importuojate serializatoriai modulis iš poilsio_rėmas supakuoti ir sukurti a FoodSerializer klasė, kuri paveldima iš ModelSerializer klasė.

Toliau nurodykite Maistas modelį, kurį norite nuosekliai sudaryti, ir laukus, kuriuos norite įtraukti į API.

11. Atnaujinkite rodinį

Tada atnaujinkite API rodinį naudodami serializatorius ir Maistas modeliai.

Pirmiausia apibrėžkite a GAUTI būdas gauti visus duomenis iš duomenų bazės Maistas. Objects.all() funkcija. Tada suskirstykite duomenis ir grąžinkite juos kaip atsakymą JSON formatu.

 django.shortcuts importuoti pateikti
rest_framework.response importuoti Atsakymas
rest_framework.decorators importuoti api_view
.modeliai importuoti Maistas
.serializer importuoti FoodSerializer

# Sukurkite savo rodinius čia.
@api_view(['GAUTI'])
defgautiFood(užklausa):
maistas = Maistas.objektai.visi()
serializer = FoodSerializer (maistas, daug =Tiesa)
grąžinti Atsakymas (serializer.data)

Tada eikite į serverio URL nuorodą:

https://127.0.0.1:8000/

Pamatysite API, rodančią duomenis iš duomenų bazės:

Sveikiname, sukūrėte REST API!

12. Pridėkite duomenis naudodami POST metodą

Patikrinkite, ar galite naudoti REST API duomenims į duomenų bazę įtraukti.

Pirmiausia apibrėžkite a PAST metodas vaizde.

@api_view(['PAST'])
defpostMaistas(užklausa):
serializer = FoodSerializer (data=request.data)
jeiguserializatorius.galiojantis():
serializatorius.sutaupyti()
grąžinti Atsakymas (serializer.data)

Tada programoje pridėkite kelią urls.py sukurti API galinį tašką PAST funkcionalumą.

urlpatterns = [
kelias ('',views.getFood),
kelias ('paštas/',views.postFood),
]

Tada eikite į šį URL:

https://127.0.0.1:8000/post

Pamatysite PAST galutinis taškas. Įtraukite duomenis į duomenų bazę JSON formatu Turinys skyrių ir spustelėkite PAST mygtuką. Pavyzdžiui, pridėkite naują maisto produktą su tokia struktūra:

{ "vardas":"Maziwa mala", "apibūdinimas":"Rūgštus pienas" }

Duomenys rodomi raudonai JSON formatu.

Dabar, jei grįšite į GAUTI galutinis taškas http://127.0.0.1:8000/, pamatysite maistąMaziwa mala“, ir jo aprašymas pridėtas.

Dabar turite REST API, kuri gali rodyti elementus ir pridėti prie programos. O kaip eksperimentuoti su kitais CRUD metodus? Dirbti su ATNAUJINTI ir IŠTRINTI metodai padidins jūsų REST API funkcionalumą.

Kaip sukurti REST API naudojant „Django“.

Dabar galite sukurti REST API naudodami „Django“. Pirmiausia sukurkite programą su modeliu, suskirstykite duomenis ir sukurkite peržiūros funkciją. Tada įtraukite URL galutinius taškus, kad galėtumėte vizualizuoti duomenis JSON formatu.

REST API kūrimas naudojant „Django REST“ sistemą yra patogus būdas dalytis duomenimis ir suteikti vartotojams puikią klientų patirtį.