# Read ### Inleiding We hebben een database aangemaakt. We hebben via een migration een tabel aangemaakt. En we hebben een model aangemaakt zodat Laravel 'weet' waar de data staat en hoe de tabel heet. We gaan nu de Read functie maken. We gaan daarvoor de **controller**, **view** en de **routing** opzetten. ### Controller Als de gebruiker van de webapplicatie de applicatie gebruikt dan gaat hij altijd eerst naar de controller. De controller gebruikt dan het model om de database te raadplegen en de output wordt view de view aan de gebruiker getoond. Dit is de MVC-structuur waarmee Laravel een applicatie opbouwt. Met het volgende commando maken we een controller. ``` php artisan make:controller StockController --resource ``` Dit commando maakt een file app/Http/Conttrollers/StockController.php [](https://www.roc.ovh/uploads/images/gallery/2022-10/image-1667035179108.png) Open deze file en plaats in de index functie de volgende code ```PHP public function index() { $stocks = Stock::all(); return view('stocks.index', compact('stocks')); // -> resources/views/stocks/index.blade.php } ``` Regel 3 haalt alle records uit de database en regel 5 opent de view (die we nog moeten maken). Voeg bovenaan in de controller (op regel 6 bijvoorbeeld) de volgende regel code toe. ```PHP use App\Models\Stock; ``` Hiermee 'kent' de controller het model van stock. ### View In Laravel staan alle views in resources/view en alle view files hebben de file extensie blade.php Waarom precies wordt later uitgelegd. We maken een nieuwe file in resources/view/stocks/stocks en noemen die file index.blade.php. De folder stocks moeten we ook zelf aanmaken! We plaatsen de volgende code in resources/view/stocks/index.blade.php ```HTML
ID | Stock Name | Stock Ticket | Stock Value | Updated at |
---|---|---|---|---|
{{$stock->id}} | {{$stock->stock_name}} | {{$stock->ticket}} | {{$stock->value}} | {{$stock->updated_at}} |