Full-Stack: Pizza Builder
Doel van de oefening
Je gaat een webapplicatie bouwen in twee delen:
Pizza Builder
Met dit formulier kan je een nieuwe pizza samenstellen.
De ingredienten worden ingeladen vanuit de database.
Je kan meerdere soorten kaas en meerdere soorten toppings selecteren.
Je kan slechts één soort saus selecteren.
Pizza Overview
Een overzicht van alle opgeslagen pizza's.
Elke pizza heeft een verwijder-knop. Hiermee wordt de pizza verwijdert uit het systeem.
Bekijk de database-structuur aandachtig! Een pizza bestaat enerzijds uit een record uit de
pizzas
tabel, maar ook uit records uit depizza_ingredients
tabel!

Functionaliteiten
1. Front-end (Vite + TypeScript)
Haal de ingredienten op via uit je database
Splits de lijst op volgens type:
sauzen
kazen
toppings
Toon elk ingredient in het juiste
<select>
element.Gebruik het
multiple
attribute om een multi-select te maken.
2. Back-end (Express + MySQL)
Je maakt endpoints aan om pizza's terug te geven en aan te maken:
Endpoints
GET /pizzas
: Geeft een lijst terug van alle pizza'sPOST /pizzas
: Maak een nieuwe pizza aan, en link de pizza aan de juiste ingredienten in depizza_ingredients
tabelDELETE /pizzas
: Verwijdert een pizza, en verwijdert ook alle records van die pizza uit depizza_ingredients
tabelGET /ingredients
: Geeft een lijst terug van alle ingredienten
Stappenplan
1. Voorbereiding
Zet je Frontend-project op met Vite
Zet je backend project op met Express
Configureer een lokale MySQL-database
2. Front-end implementatie
Maak een module
pizzabuilder.ts
om de data voor je pokédex op te vragenBouw componenten voor:
Pokedex lijst
Party overzicht
3. Back-end implementatie
Schrijf de nodige Express-routes
Verbind je server met MySQL en implementeer de CRUD-logica
Zorg ervoor dat alle routes JSON teruggeven
Last updated