Karnov | Juristic | Bech Bruun programmeringscase

Til at starte med så indstallere vi adonis og node. Dette kan du gøre ved at følge indstrukserne i dette link: https://docs.adonisjs.com/guides/installation

Efter en vellykket installation skal du køre følgende kommando for at starte programmet

node ace serve --watch

Når du trykker på http://localhost:3333, vil du se Adonisjs' hjemmeside.

Home+Page.png

Nu skal du indstallere @adonisjs/lucid package for at vi kan lagre vores data

npm i @adonisjs/lucid

Nu skal vi konfigurere databasen. Du skal køre følgende kommand og vælge SQLite

node ace configure @adonisjs/lucid

Lad os oprette en migrations- og modelfil. I adonisjs kan du udføre begge dele med en simpel kommando. En migration er en fil, der indeholder instruktioner til at oprette en tabel i databasen. En model er en fil, der repræsenterer en tabel i databasen.

node ace make:model Post -m 

Åbn migreringsfilen under databasemappen, og tilføj nødvendige kolonner.

  • database
    • migrations
      • 1632933589444_posts.ts

Når migreringsfilen er klar, kan vi kontrollere migreringsstatus, før vi migrerer.

node ace migration:status
migration-status.png

Som du kan se, er vores migreringsfil afventende, så vi kan gå videre og køre migreringen

node ace migration:run
migrated.png

Perfekt! Vi har nu overført og oprettet tabellen. Lad os fokusere på modelfilen. Vi skal fortælle koden hvilke datapunkter vi har i vores database, så den ved hvad den må og kan arbejde med. Du kan bare kopiere koden nedenfor.

Lad os nu konfigurere de nødvendige ruter i filen routes.ts. En rute er en dør til vores api ligesom vi så det med cvrapi tidligere. En rute er som vi snakkede om tidligere bare en almindelig url, men når vi arbejder med api kan to computere kommunikere denne vej.

Ovenstående kode vil lave de ruter vi har behov for helt automatisk.

route-list.png

Nu er vores ruter, model og migrationsfiler klar, så lad os oprette en controller-fil.

node ace make:controller Post -r

Vi tilføjer de relevante metoder til PostsController nu. Start med at slette edit, store og create dem skal vi ikke bruge til noget. Det er nu det sjove begynder. En god start vil være at læse dokumentationen fra adonis på dette link: https://docs.adonisjs.com/guides/models/crud-operations Her beskriver alle de metoder du har behov for til at færddiggøre opgaven.

List alle indlæg - index

Når vi rammer på ruten /postsGET metoden, skal vi modtage alle indlæggene. Du skal skrive koden til at returnere alle indlæggende

Lav et indlæg - Store

Når vi rammer på ruten /postsPOST metoden, skal vi oprette et indlæg.

Hvis alt er rigtigt burde du kunne kalde dit api'et i postman, som nedenfor. Postman er ligesom hoppscotch, vi brugte tidligere men fungere også når vi arbejder lokalt på vores computer. Du kan dowloade postman på dette link: https://www.postman.com/downloads/

POST+-+After+Create.png

Vis et indlæg - Show

for at hente et enkelt indlæg skal vi bruge show-API'et, med det indlægs id vi ønsker at finde i URL'en, for eksempel /posts/1GET metoden.

Hvis alt er rigtigt burde du kunne kalde dit api'et i postman, som nedenfor

SHOW.png

Opdater et indlæg - Update

for at opdatere et enkelt indlæg skal vi bruge update-API'et, med det indlægs id vi ønsker at finde i URL'en, for eksempel /posts/1PUT metoden.

Hvis alt er rigtigt burde du kunne kalde dit api'et i postman, som nedenfor

UPDATE.png

Slet et indlæg - Destroy

for at opdatere et enkelt indlæg skal vi bruge destroy-API'et, med det indlægs id vi ønsker at finde i URL'en, for eksempel /posts/1DELETE metoden.

Glædelig kodning.