Skip to main content

REST API

De vragen van de quiz staan als een constante in de code. In deze les gaan we een database maken en we gaan onze app aanpassen zodat je de vragen via een REST API uit de database kan halen.

Het meeste werk is om de database en REST API te maken. Dat doen we in Yii zodat we heel weinig PHP-code hoeven te gebruiken.

Database Opzet

Om data op te slaan met Yii maken we een SQL database.

Hieronder staan twee opties voor het opzetten van een database.

Bepaal voor elke optie de voor- en nadelen. Welke optie is genormaliseerd volgens de regels (van het examen)?

Optie 1

image-1628779226670.png

Optie 2

image-1628778958190.png

Omdat het in deze les niet gaat om het maken van een mooie en goede Yii app kiezen we voor optie 2. Dit zou in de praktijk niet de beste keuze zijn omdat je hierbij te veel gelimiteerd bent. Je kunt bijvoorbeeld geen 5 antwoorden per vraag vastleggen.

Maak een sql database "quiz" met eenéén tabel, noem die quiz"quiz" en maak de velden zoals beschreven in Optie 2.

image-1628885283919.png

Yii

We maken nu een standaard Yii project en maken een CRUD van onze ene tabel.

  1. Maak een nieuw Yii project.
  2. Volg de stappen uit de Yii les; vergeet niet om de:
  3. Maak nu het model en de CRUD voor de tabel quiz.

Je hebt nu een standaard CRUD app voor één tabel. Goed, laten dan beginnen met het maken van de REST API.

Gebruik de CRUD om een paar vragen aan te maken. Je kunt de 5 vragen gebruiken die we hadden, maar je kunt ook andere vragen bedenken.

Toevoegen REST API

Het opvragen van data via een REST API is niet veel meer dan het presenteren van de gegevens in JSON. We moeten er dus voor zorgen dat onze Yii app de vragen als een JSON-bestand laten zien.

xxx