Jos olet käyttänyt digitaalista laitetta tiedon lähettämiseen ja vastaanottamiseen, olet käyttänyt API: ta. Kehittäjät luovat sovellusliittymiä, joiden avulla käyttäjät voivat olla vuorovaikutuksessa sovellustensa tietojen kanssa.
REST API: n luominen on kätevä tapa jakaa tietoja. REST API: illa on määritellyt standardit, jotka säätelevät tietojen jakamista laitteiden välillä. Ymmärtääksesi, kuinka REST-sovellusliittymät toimivat, voit rakentaa sellaisen tyhjästä.
Voit käyttää Django REST -kehystä REST API: n rakentamiseen ja tietojen näyttämiseen tietokannasta.
Djangon käyttö REST API: n kanssa
Sinä pystyt käytä REST-sovellusliittymää strukturoidun tiedon hakemiseen HTTP: n kautta. Kuten monet kielet ja puitteet, Django antaa sinun rakentaa oman sovellusliittymäsi ja kuluttaa muita.
Sinulla pitäisi myös olla esiasennettuna seuraavat:
- Pythonin uusin versio.
- Pip uusin versio.
- Pipenv (vaikka voit käyttää sen sijaan venv: tä, jos haluat.)
- Djangon uusin versio.
Kun olet asentanut kaikki olennaiset ohjelmistot, olet valmis aloittamaan.
1. Asenna Django REST Framework
Django REST -kehys on tehokas työkalupakki, jonka avulla voit rakentaa ja määrittää verkkosovellusliittymiä. Sen muokattavissa olevat ominaisuudet tekevät siitä suositun vaihtoehdon REST-sovellusliittymien rakentamiseen.
Voit asentaa Django REST -kehyksen seuraavalla komennolla:
pipenv Asentaa djangorest-kehys
2. Luo Django-sovellus
Seuraavissa ohjeissa kerrotaan, kuinka luodaan ruokasovellus suosittujen kenialaisten ruokien nimien ja kuvausten keräämiseksi. API hakee pyyntöjä tietokannasta, jotta käyttäjät voivat olla vuorovaikutuksessa kyseisten tietojen kanssa.
Django-sovelluksissa on SQLite-tietokanta, joten sinun ei tarvitse asentaa toista tietokantaa.
Luodaksesi Django-sovelluksen, luo ensin projekti nimeltä ruokaa seuraavalla komennolla:
django-admin aloitusprojektin ruoka
Luo seuraavaksi Django-sovellus nimeltäkenialaista ruokaa:
django-admin startapp kenyanfood
3. Rekisteröi sovellusprojektin asetukset
Rekisteröidykenialaista ruokaasovellus projektiasetuksissa alla ASENNETUT SOVELLUKSET joukko. Jos ohitat tämän vaiheen, Django ei tunnista sovellusta. Rekisteröi myös Django REST -kehys samoissa asetuksissa:
# Sovelluksen määritelmä
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'kenialaista ruokaa',
'rest_framework',
]
4. Rekisteröi sovellusten URL-osoitteet
Rekisteröidy kenialaista ruokaa sovelluksen URL-osoitteet projektissa urls.py tiedosto alla olevan kuvan mukaisesti:
alkaen django.contrib tuonti järjestelmänvalvoja
alkaen django.urls tuonti polku, sisältää
urlpatterns = [
polku ('admin/', admin.site.urls),
polku ('', sisältää('kenyanfood.urls')),
]
5. Luo näkymä API: lle
Luo valenäkymä sovelluksessa views.py tiedostoa, joten sovellus ei aiheuta virheitä. Tuo ensin Vastaus vastustaja@apiview sisustaja Django REST -kehyksestä.
Vastaus auttaa palauttamaan steriloidut tiedot JSON muoto, kun @apiview näyttää API: n.
alkaen django.shortcuts tuonti renderöidä
alkaen rest_framework.response tuonti Vastaus
alkaen rest_framework.decorators tuonti api_view
# Luo näkemyksesi täällä.
@api_view(['SAADA'])
defHae ruokaa(pyyntö):
palata Vastaus()
6. Luo sovellukselle URL-polku
Luo URL-polku luomallesi API-näkymälle. Tämä päätepiste näyttää kenialaista ruokaatiedot.
alkaen django.urls tuonti polku
alkaen. tuonti näkymät
alkaen django.conf tuonti asetukset
urlpatterns = [
polku ('', views.getFood),
polku ('lähettää/', views.postFood),
]
7. Luo malli sovellukselle
Sovelluksen malliluokka on ns Ruoka. Sen pitäisi näyttää tältä:
alkaen django.db tuonti mallit
# Luo mallisi täällä.
luokkaaRuokaa(mallit. Malli):
nimi = mallit. CharField (max_length = 200)
kuvaus = mallit. CharField (max_length = 500)
Rekisteröi malli sovelluksessa admin.py tiedosto alla olevan kuvan mukaisesti:
alkaen django.contrib tuonti järjestelmänvalvoja
alkaen .malleja tuonti Ruokaa
# Rekisteröi mallisi täällä.
järjestelmänvalvoja.site.rekisteröidy(Ruokaa)
8. Tee siirtoja
Seuraava, siirtyä sovellus luodaksesi taulukoita SQLite tietokanta. Voit tehdä tämän käyttämällä seuraavaa komentoa:
pythonhallita.pymuuttavatkenialaista ruokaa
Ota seuraavaksi nämä siirrot suorittamalla tämä komento:
pythonhallita.pysiirtyä
Onnistunut siirto näyttää tältä:
Onnistuneet siirrot tarkoittavat, että tietokanta on luonut taulukoita kenialaista ruokaaSovellus.
9. Lisää tietoja tietokantaan
Käytä Django järjestelmänvalvoja GUI tietojen syöttämiseen tietokantaan. Django järjestelmänvalvoja on loistava käyttöliittymä sovelluksesi tietojen visualisointiin ja hallintaan.
Vaihtoehtoisesti voit käyttää komentorivillä olevaa python-kuorta syöttääksesi tietoja käsin tietokantaan. Tässä oppaassa käytät Django-järjestelmänvalvojan käyttöliittymää.
Käytä seuraavaa komentoa määrittääksesi Django admin:
pythonhallita.pyluo superkäyttäjä
Anna pyydettäessä oma käyttäjätunnus, sähköpostiosoite ja salasana. Tämän jälkeen voit avata järjestelmänvalvojan sivun alla olevasta linkistä:
http://127.0.0.1:8000/admin/
Näet kirjautumissivun:
Kun kirjaudut sisään, näet Django-hallintaliittymän ryhmät ja Käyttäjät malli. Nämä molemmat ovat todennusta varten; the Ruokaa malli on alla olevassa osiossa.
Voit lisätä ja poistaa Ruokaa tietokannan kohteet järjestelmänvalvojan sivulta. Lisää joitain kenialaisia herkkuja, kuten Ugali, Pilau ja Chai, tietokantaan.
Nyt kun tietokannassa on tietoja, luo API
10. Sarjaa malli
Sarjastit muuntaa monimutkaiset Django-mallit JSON objektit, jolloin tiedot ovat helposti luettavissa API: ssa. Sarjoittaminen tekee datasta luettavampaa API: ssa.
Luo uusi tiedosto sovelluksessa nimeltä serializer.py
alkaen rest_framework tuonti serialisoijat
alkaen .malleja tuonti Ruokaa
luokkaaFoodSerializer(serialisaattorit. ModelSerializer):
luokkaaMeta:
malli = Ruoka
kentät =('nimi','kuvaus')
Tuot serialisoijat moduuli rest_framework pakkaa ja luo a FoodSerializer luokka, joka perii ModelSerializer luokkaa.
Määritä seuraavaksi Ruokaa malli, jonka haluat sarjottaa, ja kentät, jotka haluat lisätä API: hen.
11. Päivitä näkymä
Päivitä seuraavaksi API-näkymä serialisaattori ja Ruokaa mallit.
Määritä ensin a SAADA menetelmä noutaa kaikki tiedot tietokannasta Ruoka. Objects.all() toiminto. Sen jälkeen sarjoi tiedot ja palautti ne vastauksena JSON muoto.
alkaen django.shortcuts tuonti renderöidä
alkaen rest_framework.response tuonti Vastaus
alkaen rest_framework.decorators tuonti api_view
alkaen .malleja tuonti Ruokaa
alkaen .serializer tuonti FoodSerializer
# Luo näkemyksesi täällä.
@api_view(['SAADA'])
defHae ruokaa(pyyntö):
ruoka = Ruoka.esineet.kaikki()
serializer = FoodSerializer (ruoka, monet =Totta)
palata Vastaus (serializer.data)
Siirry sitten palvelimen URL-linkkiin:
https://127.0.0.1:8000/
Näet APIn näyttävän tietoja tietokannasta:
Onnittelut, olet luonut REST-sovellusliittymän!
12. Lisää tietoja POST-menetelmällä
Testaa, voitko käyttää REST API: ta tietojen lisäämiseen tietokantaan.
Määritä ensin a LÄHETTÄÄ menetelmä näkymässä.
@api_view(['LÄHETTÄÄ'])
defpostFood(pyyntö):
serializer = FoodSerializer (data=request.data)
josserialisaattori.is_valid():
serialisaattori.Tallentaa()
palata Vastaus (serializer.data)
Lisää sitten polku sovellukseen urls.py luodaksesi päätepisteen API: lle LÄHETTÄÄ toiminnallisuutta.
urlpatterns = [
polku ('',views.getFood),
polku ('lähettää/',views.postFood),
]
Siirry seuraavaksi tähän URL-osoitteeseen:
https://127.0.0.1:8000/post
Tulet näkemään LÄHETTÄÄ päätepiste. Lisää tietoja tietokantaan JSON muodossa Sisältö -osio ja napsauta LÄHETTÄÄ -painiketta. Lisää esimerkiksi uusi ruoka, jolla on seuraava rakenne:
{ "nimi":"Maziwa mala", "kuvaus":"Hapan maito" }
Näet tiedot punaisena JSON muoto.
Jos nyt navigoit takaisin kohtaan SAADA päätepiste http://127.0.0.1:8000/, näet ruoanMaziwa mala,' ja sen kuvaus lisätty.
Sinulla on nyt REST API, joka voi näyttää ja lisätä kohteita sovellukseen. Mitä jos kokeilisit muiden kanssa LIKA menetelmiä? kanssa PÄIVITTÄÄ ja POISTAA menetelmät lisäävät REST API: si toimivuutta.
Kuinka luoda REST API Djangon avulla
Voit nyt luoda REST API: n Djangon avulla. Luo ensin sovellus mallilla, sarjoi tiedot ja luo näkymätoiminto. Lisää seuraavaksi URL-päätepisteet tietojen visualisoimiseksi JSON-muodossa.
REST-sovellusliittymien rakentaminen Django REST -kehyksen avulla on kätevä tapa jakaa tietoja ja tarjota käyttäjillesi loistava asiakaskokemus.