Praksis med controllere og visninger i MVC
Opret controlleren Product, i hvis konstruktør
følgende array vil blive sat:
<?php
$this->products = [
1 => [
'name' => 'product1',
'price' => 100,
'quantity' => 5,
'category' => 'category1',
],
2 => [
'name' => 'product2',
'price' => 200,
'quantity' => 6,
'category' => 'category2',
],
3 => [
'name' => 'product3',
'price' => 300,
'quantity' => 7,
'category' => 'category2',
],
4 => [
'name' => 'product4',
'price' => 400,
'quantity' => 8,
'category' => 'category3',
],
5 => [
'name' => 'product5',
'price' => 500,
'quantity' => 9,
'category' => 'category3',
],
]
?>
I controlleren Product lav en handling
show, som vil vise information
om en enkelt produkt. Lad denne handling håndtere
adresser af følgende type: /product/:n/,
hvor parameteren vil være produktets nummer i arrayet.
Gør så, at henvisning til sådanne adresser
vha. var_dump viser data for det
produkt, som blev anmodet via adresselinjen.
Tilføj en visning til den oprettede handling. Brug følgende HTML til dette:
<h1>Produkt "product1" fra kategori "category1"</h1>
<p>
Pris: 100$, antal: 5
</p>
<p>
Værdi (pris * antal): 500$
</p>
Dataene i denne HTML svarer til det første produkt. Gør så, at visningen viser data for det produkt, som blev anmodet via adresselinjen.
I controlleren Product lav en handling
all, som vil vise en liste over alle
produkter i form af en HTML-tabel. Lad denne handling
håndtere adressen /products/all/.