Laravel初學者指南:了解視圖(View)的運作與應用

閱讀時間約 2 分鐘

在Laravel的MVC架構中,視圖(View)扮演著呈現資料給使用者的角色。它是應用程式的前端部分,負責顯示從Controller和Model取得的資料。本篇文章將深入探討Laravel中視圖的運作方式和應用。

視圖(View)的基本概念

視圖是應用程式的前端部分,用於顯示從Controller和Model取得的資料。它不包含任何業務邏輯,只負責資料的呈現。

建立和管理視圖

視圖在Laravel中通常存放在resources/views目錄下。建立視圖非常簡單,只需建立一個新的.blade.php檔案。Laravel提供了一套目錄結構,幫助我們組織和管理多個視圖檔案。

視圖與資料

視圖的主要目的是顯示資料。我們可以從Controller傳遞資料到視圖,並使用特定的語法在視圖中顯示這些資料。

public function show($id)
{
$item = Item::find($id);
return view('items.show', ['item' => $item]);
}

Blade模板引擎

Laravel內建的Blade模板引擎提供了一套強大的工具,幫助我們更有效地建立動態視圖。Blade的語法既簡單又直觀,例如:

@if($user->isAdmin())
<p>Welcome, Admin!</p>
@endif

視圖組成和繼承

Blade模板引擎支持視圖組成和繼承,這使得建立可重用的視圖元件和佈局變得非常容易。例如,我們可以建立一個主佈局,並在其他視圖中繼承它。

// master.blade.php
<html>
<head>
<title>@yield('title')</title>
</head>
<body>
@yield('content')
</body>
</html>

透過這篇文章,我們了解了Laravel中視圖的基本概念、如何建立和管理視圖、視圖與資料的互動方式、Blade模板引擎的功能,以及視圖組成和繼承的方法。

最後

接近文章的結尾,您可能會有些許的失望。在「Laravel初學者指南」系列中,我並不打算深入探討視圖,更精確地說,我不會過多地著墨於「Blade模板引擎」。當今已有許多優秀的前端框架可供選擇,儘管在某些情境下,我們仍會使用到Blade模板引擎的語法,但考慮到Laravel的官方文件已足夠詳盡,因此我選擇不再此篇文章中過多地展示。希望您能夠諒解這樣「水」了一篇文章。


在接下來的文章中,我們將轉向「路由(Route)」進行深入的探討。

如果您對此有更多的疑問或想要了解其他相關主題,歡迎在文章下方留言或進行討論。期待與您的互動!

Laravel專案開發系列作為初學者和追求卓越的開發者的指南。從Laravel的基礎語法開始,逐步深入到實際的應用開發,如購物車系統。這系列不僅助您打好基礎,更能夠引領您走向專業開發的道路,讓您在Laravel的世界中游刃有餘。
留言0
查看全部
發表第一個留言支持創作者!
你可能也想看
創作者要怎麼好好休息 + 避免工作過量?《黑貓創作報#4》午安,最近累不累? 這篇不是虛假的關心。而是《黑貓創作報》發行以來可能最重要的一篇。 是的,我們這篇講怎麼補充能量,也就是怎麼休息。
Thumbnail
avatar
黑貓老師
2024-06-29
防曬產品係數測試報告彙整(2024年)從2014年起,自己對於市售防曬產品的效能產生了濃厚的興趣。因為當時候發現不少產品的防曬係數其實標示是有問題的,像是原本應該是人體測試的SPF與PA數值,實際上沒有做,只用機器測試的數據來充當,但這兩者卻有很大的差異。像是防曬係數其實有強度、廣度與平均度三個面向需要一起判斷,但多數廠商並沒有完整標示
Thumbnail
avatar
邱品齊皮膚科醫師
2023-04-27
Laravel Validator紀錄一下Laravel好用的validator。 E 本筆記參考: 1. https://stackoverflow.com/questions/31539727/laravel-password-validation-rule
avatar
Vic Lin
2020-12-17
Laravel try catch紀錄一下在Laravel中,如何使用try catch。
Thumbnail
avatar
Vic Lin
2020-11-18
Laravel Model 關聯續上篇,把程式碼改成這樣,model加上關聯,就可以從article去query comments了。 L27表示從article table中primary key = 1的文章去找所有留言。 L27的$articles變數output如下: L12這個method: comments(),
Thumbnail
avatar
Vic Lin
2020-11-15
Laravel JOIN 查詢假如開發了一個部落格,以下是ERD設計: 接著從程式碼來看如何join: $this->article ->join('comments', 'article.article_id', '=', 'comments.article_id') ->select('article.article_i
Thumbnail
avatar
Vic Lin
2020-11-15
Laravel 建立 Helper function在開發過程中,難免會需要自己寫一些common function,例如Laravel 如何寫 Log這篇提到的,write log為了能夠顯示file name跟line,可以把它封裝成一個common function,以後要改log format也只需要從這邊改...
Thumbnail
avatar
Vic Lin
2020-11-10
Laravel 如何寫 LogLaravel的日誌系統底層是Monolog,設定在config\logging.php裡面,預設路徑是在storage\logs\laravel.log,也可以更改成喜歡的路徑。 ...
Thumbnail
avatar
Vic Lin
2020-11-10
Laravel 加入 Repository 與 ServiceLaravel本身是MVC架構的Framework,但隨著專案越來越龐大,若不把系統架構分工再切細一點,可能會導致日後維護的困難。 例如可能會很常發生controller要與model溝通拿資料,又要處理商業邏輯,就會導致controller越來越肥,因此本文要介紹的是....
Thumbnail
avatar
Vic Lin
2020-11-09
Laravel Restful API with JWT Authentication本筆記遵循官方文件教學,經過一些小修改,經測試可以跑在Laravel Framework version: 8.13.0,將筆記記錄下來。 ......
Thumbnail
avatar
Vic Lin
2020-11-08
Laravel Ajax Example本文模擬user註冊的情境來簡單演示,在Laravel中如何透過ajax來存取資料,以post request為例。 前端透過post把user資料送到controller中,並且透過model把資料塞進DB,最後回傳json response。 完整source cod
Thumbnail
avatar
Vic Lin
2020-11-03
Laravel 8 Hello WorldLaravel Framework version: 8.12.3 本範例做了兩個,一個是進到首頁顯示hello world!,另一個是進到article頁面時,從資料庫把文章抓出來顯示。 ...
Thumbnail
avatar
Vic Lin
2020-10-31