Submit Search
Upload
Route 路由控制
•
6 likes
•
48,137 views
Shengyou Fan
Follow
在 2015 年 7 月至新北市樹林國小舉辦 Laravel 工作坊,讓參與的學員在 30 個小時內學會使用 Laravel 建置一個具 Open ID 認證功能的網路應用程式。
Read less
Read more
Technology
Report
Share
Report
Share
1 of 30
Download now
Download to read offline
Recommended
使用 Controller
使用 Controller
Shengyou Fan
Eloquent ORM
Eloquent ORM
Shengyou Fan
PHP 語法基礎與物件導向
PHP 語法基礎與物件導向
Shengyou Fan
給你一個使用 Laravel 的理由
給你一個使用 Laravel 的理由
Shengyou Fan
啟動 Laravel 與環境設定
啟動 Laravel 與環境設定
Shengyou Fan
使用 laravel 的前與後
使用 laravel 的前與後
Shengyou Fan
Controllerのbefore_actionにおける インスタンス変数セットについて
Controllerのbefore_actionにおける インスタンス変数セットについて
pospome
[PHPConf Taiwan 2015] 跟著 Laravel 5.1 一起成為更好的 PHP 開發者
[PHPConf Taiwan 2015] 跟著 Laravel 5.1 一起成為更好的 PHP 開發者
Shengyou Fan
Recommended
使用 Controller
使用 Controller
Shengyou Fan
Eloquent ORM
Eloquent ORM
Shengyou Fan
PHP 語法基礎與物件導向
PHP 語法基礎與物件導向
Shengyou Fan
給你一個使用 Laravel 的理由
給你一個使用 Laravel 的理由
Shengyou Fan
啟動 Laravel 與環境設定
啟動 Laravel 與環境設定
Shengyou Fan
使用 laravel 的前與後
使用 laravel 的前與後
Shengyou Fan
Controllerのbefore_actionにおける インスタンス変数セットについて
Controllerのbefore_actionにおける インスタンス変数セットについて
pospome
[PHPConf Taiwan 2015] 跟著 Laravel 5.1 一起成為更好的 PHP 開發者
[PHPConf Taiwan 2015] 跟著 Laravel 5.1 一起成為更好的 PHP 開發者
Shengyou Fan
Ch09 整合資料庫
Ch09 整合資料庫
Justin Lin
Introduction to laravel framework
Introduction to laravel framework
Ahmad Fatoni
Ch13 整合 Spring MVC/Security
Ch13 整合 Spring MVC/Security
Justin Lin
Angular Directives
Angular Directives
iFour Technolab Pvt. Ltd.
Spring 2.0 技術手冊第六章 - Hibernate 與 Spring
Spring 2.0 技術手冊第六章 - Hibernate 與 Spring
Justin Lin
Ch05 Servlet 進階 API、過濾器與傾聽器
Ch05 Servlet 進階 API、過濾器與傾聽器
Justin Lin
Composer 套件管理
Composer 套件管理
Shengyou Fan
Ch07 使用 JSTL
Ch07 使用 JSTL
Justin Lin
Connecting Connect with Spring Boot
Connecting Connect with Spring Boot
Vincent Kok
Spring Boot & Actuators
Spring Boot & Actuators
VMware Tanzu
[Community Open Camp] 給 PHP 開發者的 VS Code 指南
[Community Open Camp] 給 PHP 開發者的 VS Code 指南
Shengyou Fan
REST APIs with Spring
REST APIs with Spring
Joshua Long
JSON in Solr: from top to bottom
JSON in Solr: from top to bottom
Alexandre Rafalovitch
LaravelConf Taiwan 2017 單頁面應用與前後端分離開發
LaravelConf Taiwan 2017 單頁面應用與前後端分離開發
俊仁 陳
Spring boot
Spring boot
Bhagwat Kumar
Ch06 使用 JSP
Ch06 使用 JSP
Justin Lin
從頭打造 C#、.NET 與 ASP.NET Core 開發環境
從頭打造 C#、.NET 與 ASP.NET Core 開發環境
Will Huang
Angular 2.0 forms
Angular 2.0 forms
Eyal Vardi
PHP5.5新機能「ジェネレータ」初心者入門
PHP5.5新機能「ジェネレータ」初心者入門
kwatch
Ch03 請求與回應
Ch03 請求與回應
Justin Lin
Package 安裝與使用
Package 安裝與使用
Shengyou Fan
開發環境建置
開發環境建置
Shengyou Fan
More Related Content
What's hot
Ch09 整合資料庫
Ch09 整合資料庫
Justin Lin
Introduction to laravel framework
Introduction to laravel framework
Ahmad Fatoni
Ch13 整合 Spring MVC/Security
Ch13 整合 Spring MVC/Security
Justin Lin
Angular Directives
Angular Directives
iFour Technolab Pvt. Ltd.
Spring 2.0 技術手冊第六章 - Hibernate 與 Spring
Spring 2.0 技術手冊第六章 - Hibernate 與 Spring
Justin Lin
Ch05 Servlet 進階 API、過濾器與傾聽器
Ch05 Servlet 進階 API、過濾器與傾聽器
Justin Lin
Composer 套件管理
Composer 套件管理
Shengyou Fan
Ch07 使用 JSTL
Ch07 使用 JSTL
Justin Lin
Connecting Connect with Spring Boot
Connecting Connect with Spring Boot
Vincent Kok
Spring Boot & Actuators
Spring Boot & Actuators
VMware Tanzu
[Community Open Camp] 給 PHP 開發者的 VS Code 指南
[Community Open Camp] 給 PHP 開發者的 VS Code 指南
Shengyou Fan
REST APIs with Spring
REST APIs with Spring
Joshua Long
JSON in Solr: from top to bottom
JSON in Solr: from top to bottom
Alexandre Rafalovitch
LaravelConf Taiwan 2017 單頁面應用與前後端分離開發
LaravelConf Taiwan 2017 單頁面應用與前後端分離開發
俊仁 陳
Spring boot
Spring boot
Bhagwat Kumar
Ch06 使用 JSP
Ch06 使用 JSP
Justin Lin
從頭打造 C#、.NET 與 ASP.NET Core 開發環境
從頭打造 C#、.NET 與 ASP.NET Core 開發環境
Will Huang
Angular 2.0 forms
Angular 2.0 forms
Eyal Vardi
PHP5.5新機能「ジェネレータ」初心者入門
PHP5.5新機能「ジェネレータ」初心者入門
kwatch
Ch03 請求與回應
Ch03 請求與回應
Justin Lin
What's hot
(20)
Ch09 整合資料庫
Ch09 整合資料庫
Introduction to laravel framework
Introduction to laravel framework
Ch13 整合 Spring MVC/Security
Ch13 整合 Spring MVC/Security
Angular Directives
Angular Directives
Spring 2.0 技術手冊第六章 - Hibernate 與 Spring
Spring 2.0 技術手冊第六章 - Hibernate 與 Spring
Ch05 Servlet 進階 API、過濾器與傾聽器
Ch05 Servlet 進階 API、過濾器與傾聽器
Composer 套件管理
Composer 套件管理
Ch07 使用 JSTL
Ch07 使用 JSTL
Connecting Connect with Spring Boot
Connecting Connect with Spring Boot
Spring Boot & Actuators
Spring Boot & Actuators
[Community Open Camp] 給 PHP 開發者的 VS Code 指南
[Community Open Camp] 給 PHP 開發者的 VS Code 指南
REST APIs with Spring
REST APIs with Spring
JSON in Solr: from top to bottom
JSON in Solr: from top to bottom
LaravelConf Taiwan 2017 單頁面應用與前後端分離開發
LaravelConf Taiwan 2017 單頁面應用與前後端分離開發
Spring boot
Spring boot
Ch06 使用 JSP
Ch06 使用 JSP
從頭打造 C#、.NET 與 ASP.NET Core 開發環境
從頭打造 C#、.NET 與 ASP.NET Core 開發環境
Angular 2.0 forms
Angular 2.0 forms
PHP5.5新機能「ジェネレータ」初心者入門
PHP5.5新機能「ジェネレータ」初心者入門
Ch03 請求與回應
Ch03 請求與回應
Viewers also liked
Package 安裝與使用
Package 安裝與使用
Shengyou Fan
開發環境建置
開發環境建置
Shengyou Fan
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎
Shengyou Fan
Migrations 與 Schema 操作
Migrations 與 Schema 操作
Shengyou Fan
Model 設定與 Seeding
Model 設定與 Seeding
Shengyou Fan
工作坊簡介
工作坊簡介
Shengyou Fan
CRUD 綜合運用
CRUD 綜合運用
Shengyou Fan
驗證與訊息
驗證與訊息
Shengyou Fan
使用者認證
使用者認證
Shengyou Fan
整合 Open ID
整合 Open ID
Shengyou Fan
工作坊總結
工作坊總結
Shengyou Fan
Model & Seeding整合
Model & Seeding整合
Shengyou Fan
Schema & Migration操作
Schema & Migration操作
Shengyou Fan
使用 Eloquent ORM
使用 Eloquent ORM
Shengyou Fan
Route 機制
Route 機制
Shengyou Fan
CRUD 綜合應用
CRUD 綜合應用
Shengyou Fan
開發流程與工具介紹
開發流程與工具介紹
Shengyou Fan
使用者認證
使用者認證
Shengyou Fan
應用程式佈署
應用程式佈署
Shengyou Fan
專案啟動與設定
專案啟動與設定
Shengyou Fan
Viewers also liked
(20)
Package 安裝與使用
Package 安裝與使用
開發環境建置
開發環境建置
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎
Migrations 與 Schema 操作
Migrations 與 Schema 操作
Model 設定與 Seeding
Model 設定與 Seeding
工作坊簡介
工作坊簡介
CRUD 綜合運用
CRUD 綜合運用
驗證與訊息
驗證與訊息
使用者認證
使用者認證
整合 Open ID
整合 Open ID
工作坊總結
工作坊總結
Model & Seeding整合
Model & Seeding整合
Schema & Migration操作
Schema & Migration操作
使用 Eloquent ORM
使用 Eloquent ORM
Route 機制
Route 機制
CRUD 綜合應用
CRUD 綜合應用
開發流程與工具介紹
開發流程與工具介紹
使用者認證
使用者認證
應用程式佈署
應用程式佈署
專案啟動與設定
專案啟動與設定
Similar to Route 路由控制
Route路由控制
Route路由控制
Shengyou Fan
使用 Controller
使用 Controller
Shengyou Fan
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎
Shengyou Fan
開發環境建置
開發環境建置
Shengyou Fan
專案啟動與環境設定
專案啟動與環境設定
Shengyou Fan
Ch02 撰寫與設定 Servlet
Ch02 撰寫與設定 Servlet
Justin Lin
Rails 初探
Rails 初探
满佳 林
Laravel II - Developer Student Clubs NCU.pdf
Laravel II - Developer Student Clubs NCU.pdf
NCUDSC
2021.laravelconf.tw.slides3
2021.laravelconf.tw.slides3
LiviaLiaoFontech
From Java Stream to Java DataFrame
From Java Stream to Java DataFrame
Chen-en Lu
COSCUP 2016 Laravel 部署工作坊 - 部署指南
COSCUP 2016 Laravel 部署工作坊 - 部署指南
Shengyou Fan
How to ASP.NET MVC4
How to ASP.NET MVC4
Daniel Chou
Rails talk-5
Rails talk-5
Eddie Lee
Raising The MySQL Bar-Manyi Lu
Raising The MySQL Bar-Manyi Lu
郁萍 王
Rest Ruby On Rails
Rest Ruby On Rails
shaokun
Servlet & JSP 教學手冊第二版 - 第 1 章:簡介Web應用程式
Servlet & JSP 教學手冊第二版 - 第 1 章:簡介Web應用程式
Justin Lin
Rest与面向资源的web开发
Rest与面向资源的web开发
topgeek
Migrations 與 Schema操作
Migrations 與 Schema操作
Shengyou Fan
工作坊總結
工作坊總結
Shengyou Fan
Spring mvc
Spring mvc
pepsixp
Similar to Route 路由控制
(20)
Route路由控制
Route路由控制
使用 Controller
使用 Controller
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎
開發環境建置
開發環境建置
專案啟動與環境設定
專案啟動與環境設定
Ch02 撰寫與設定 Servlet
Ch02 撰寫與設定 Servlet
Rails 初探
Rails 初探
Laravel II - Developer Student Clubs NCU.pdf
Laravel II - Developer Student Clubs NCU.pdf
2021.laravelconf.tw.slides3
2021.laravelconf.tw.slides3
From Java Stream to Java DataFrame
From Java Stream to Java DataFrame
COSCUP 2016 Laravel 部署工作坊 - 部署指南
COSCUP 2016 Laravel 部署工作坊 - 部署指南
How to ASP.NET MVC4
How to ASP.NET MVC4
Rails talk-5
Rails talk-5
Raising The MySQL Bar-Manyi Lu
Raising The MySQL Bar-Manyi Lu
Rest Ruby On Rails
Rest Ruby On Rails
Servlet & JSP 教學手冊第二版 - 第 1 章:簡介Web應用程式
Servlet & JSP 教學手冊第二版 - 第 1 章:簡介Web應用程式
Rest与面向资源的web开发
Rest与面向资源的web开发
Migrations 與 Schema操作
Migrations 與 Schema操作
工作坊總結
工作坊總結
Spring mvc
Spring mvc
More from Shengyou Fan
[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
Shengyou Fan
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
Shengyou Fan
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
Shengyou Fan
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
Shengyou Fan
How I make a podcast website using serverless technology in 2023
How I make a podcast website using serverless technology in 2023
Shengyou Fan
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
Shengyou Fan
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
Shengyou Fan
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
Shengyou Fan
Using the Exposed SQL Framework to Manage Your Database
Using the Exposed SQL Framework to Manage Your Database
Shengyou Fan
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
Shengyou Fan
[COSCUP 2022] Kotlin Collection 遊樂園
[COSCUP 2022] Kotlin Collection 遊樂園
Shengyou Fan
初探 Kotlin Multiplatform
初探 Kotlin Multiplatform
Shengyou Fan
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
Shengyou Fan
[PHP 也有 Day #64] PHP 升級指南
[PHP 也有 Day #64] PHP 升級指南
Shengyou Fan
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
Shengyou Fan
Composer 經典食譜
Composer 經典食譜
Shengyou Fan
老派浪漫:用 Kotlin 寫 Command Line 工具
老派浪漫:用 Kotlin 寫 Command Line 工具
Shengyou Fan
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
Shengyou Fan
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
Shengyou Fan
[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless
[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless
Shengyou Fan
More from Shengyou Fan
(20)
[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
[GDG Kaohsiung DevFest 2023] 以 Compose 及 Kotlin Multiplatform 打造多平台應用程式
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
[JCConf 2023] 從 Kotlin Multiplatform 到 Compose Multiplatform:在多平台間輕鬆共用業務邏輯與 U...
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
[Kotlin 讀書會第五梯次] 深入淺出 Kotlin 第一章導讀
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
[WebConf Taiwan 2023] 一份 Zend Engine 外帶!透過 Micro 讓一次打包、多處運行變得可能
How I make a podcast website using serverless technology in 2023
How I make a podcast website using serverless technology in 2023
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
[Effective Kotlin 讀書會] 第八章 Efficient collection processing 導讀
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
[MOPCON 2022] 以 Kotlin Multiplatform 制霸全平台
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
[JCConf 2022] Compose for Desktop - 開發桌面軟體的新選擇
Using the Exposed SQL Framework to Manage Your Database
Using the Exposed SQL Framework to Manage Your Database
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
[COSCUP 2022] 讓黑畫面再次偉大 - 用 PHP 寫 CLI 工具
[COSCUP 2022] Kotlin Collection 遊樂園
[COSCUP 2022] Kotlin Collection 遊樂園
初探 Kotlin Multiplatform
初探 Kotlin Multiplatform
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
簡化 JVM 上雲 - 透過 Azure Spring Cloud 提升開發、發佈及服務監控效率
[PHP 也有 Day #64] PHP 升級指南
[PHP 也有 Day #64] PHP 升級指南
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
以 Kotlin Multiplatform Mobile (KMM) 開發跨平台行動應用
Composer 經典食譜
Composer 經典食譜
老派浪漫:用 Kotlin 寫 Command Line 工具
老派浪漫:用 Kotlin 寫 Command Line 工具
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
[Kotlin Serverless 工作坊] 單元 4 - 實作 RSS Aggregator
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
[Kotlin Serverless 工作坊] 單元 3 - 實作 JSON API
[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless
[Kotlin Serverless 工作坊] 單元 2 - 簡介 Kotlin Serverless
Route 路由控制
1.
Route 路由控制 范聖佑 Shengyou
Fan 新北市樹林國⼩小 (2015/07/07) 適 ⽤用 5.1 版
2.
單元主題 • 什麼是 Route
路由? • 使⽤用 Route 路由跟以往的作法有什麼不同?有什麼 好處? • 如何設定 Laravel 的 Route? • 依照⼯工作坊網站規劃書⽰示範如何設定 Route
3.
Route 簡介
4.
什麼是 Route (路由)? •
把它想像成是應⽤用程式的⼤大⾨門管理員,每⼀一個 Request 都要通過管理員,符合正確的條件才可以送 到後⽅方應⽤用程式做處理,⽽而管理員的放⾏行原則,就 是依照應⽤用程式設定的 Route 規則來驗證 • 簡單來說,Route 就是應⽤用程式的⾨門禁規則,規則內 指定每⼀一個 Route 可以接受的動作 (GET、POST、 PATCH、DELETE) 、對應的網址 (uri) 及傳⼊入的參數 • Route 會從規則表裡由上⽽而下逐⼀一⽐比對,符合就會執 ⾏行、若找不到就會回傳 404 (Not Found)
5.
在使⽤用 Route 之前… index.php 依
URL 對應⾄至各 php 檔案,找不 到檔案就是 404 Server Request Response Client contact.php search.php posts.php about.php GET GET、POST PATCH、DELETE GET GET、POST GET 各 php 檔裡要⾃自⾏行處理可 接受的 HTTP 動作判斷
6.
Laravel 的 Route
機制 Route Controller ModelView index.php Server Request Response Client app init ★ 參考說明:http://laravel-recipes.com/recipes/52/understanding-the-request-lifecycle
7.
為什麼要⽤用 Route? • HTTP
伺服器的 Document Root 指定在 public,透過 框架進⼊入點 (index.php) 統⼀一管理所有路由,增加程 式碼安全性 • 搭配 HTTP 伺服器的 rewirte 模組 (Apache 和 Nginx 都有對應),可以讓網站的網址變得更好看也更符合 RESTFul 語意 • 透過 Route 設計,應⽤用程式內所有可使⽤用的路徑就 ⼀一⺫⽬目了然,增加團隊合作時的效率 • 在針對應⽤用程式除錯時,可以透過統⼀一的運作路徑 逐⼀一排除錯誤
8.
Route 語法 ★ 參考⽂文件:http://laravel.com/docs/5.1/routing
9.
Laravel 的 Route
設定檔 • 由於 Route 處理所有 HTTP 相關的 Request,因此 Laravel 的 Route 規則設定檔根據功能放置在: - app/Http/routes.php
10.
設定 Route 動作 •
接收 GET (讀取) • 接收 POST (寫⼊入) • 接收 PATCH (更新) • 接收 DELETE (刪除) Route::get('{uri}', function() { // Closure }); Route::post('{uri}', function() { // Closure }); Route::patch('{uri}', function() { // Closure }); Route::delete('{uri}', function() { // Closure });
11.
Route 接收參數 • 接收必要參數 •
接收選擇性參數 Route::get('posts/{id}', function($id) { return 'Post: '.$id; }); Route::get('users/{name?}', function($name = 'John') { return 'My name is '.$name; });
12.
限制參數格式 • 使⽤用 where
限制 • 使⽤用 pattern 限制 Route::get('posts/{id}', function($id) { return 'Post: '.$id; }) -‐>where('id', '[0-‐9]+'); Route::pattern('id', '[0-‐9]+'); Route::get('posts/{id}', function($id) { return 'Post: '.$id; });
13.
有哪些 routes? • 當應⽤用程式愈寫愈⼤大、Route
也因此愈設定愈多時, 尤其綜合使⽤用很多 Route 特異功能時,如何知道⺫⽬目 前的應⽤用程式有哪些 routes 呢? 答:artisan 有⼀一個指令,可以將⺫⽬目前所有 routes 規則整理成表格後印出,透過這個表格就可以知道 到底有多少條規則被設定了
14.
$ php artisan
route:list (列出⺫⽬目前所有的 route 規則)
15.
artisan route:list • 印出所有
route 表格 - 呼叫這個指令,artisan 會把⺫⽬目前應⽤用程式內所有 的 route 規則整理成表格印出在畫⾯面上 - -‐-‐name={...} 依名字搜尋 route - -‐-‐path={...} 依路徑搜尋 route • 範例: $ php artisan route:list
16.
檢查 Route 設定 ⽤用
artisan 指令列出⺫⽬目前的 Route 設定
17.
進階 Route 設定 ★
參考⽂文件:http://laravel.com/docs/5.1/routing
18.
進階 Route 設定 •
Laravel 還可搭配進階技巧做出更多彈性的設計 - Named Routes - Route 群組 ‣ Route Prefixing ‣ Sub-Domain Routing
19.
為 Route 命名 •
可以為每⼀一個 Route 取⼀一個名字 • 之後在 view 上⾯面就可以直接⽤用 helper 產⽣生 url Route::get('post/{id}', ['as' => 'posts.show', function() { // }]); <a href="{{ route('posts.show', $id) }}"></a>
20.
Route 群組 • 將⼀一系列有相同設定的
Route 規則組成⼀一個群組來 ⼀一同設定,除了少打⼀一些程式碼外,在管理上也⽐比 較⽅方便 Route::group(['{function}' => '{setting}'], function() { Route::get('{uri}', function() { }); });
21.
Route Prefixing • 設定某些
Route 前都有共同的前置 uri Route::group(['prefix' => 'admin'], function() { Route::get('users', function() { // 實際上的 URL 會是 "/admin/users" }); });
22.
Sub-Domain Routing • 限制
Route 只能在某個 Sub-Domain 才接受 Route::group(['domain' => '{account}.myapp.com'], function() { Route::get('user/{id}', function($account, $id) { // URL 若是 {account}.myapp.com 就會進⼊入這裡 }); });
23.
設定專案 Route
24.
專案網站架構圖
25.
預定完成的 Route
26.
直接回傳字串 • 在這個階段的實作裡,我們先直接在 Route
裡回傳 字串,先確認把通道打開即可 • 在瀏覽器裡預覽時,只要有看到字串顯⽰示在畫⾯面上 就表⽰示成功了 • 若發現打中⽂文是亂碼,是因為我們送出的內容裡沒 有編碼設定 Route::get('/', function() { return 'home.index'; });
27.
Route 規則表格 設定完 routes.php
後,執⾏行 artisan route:list 檢查結果
28.
存檔點 • 試著把現在已經可以運作的程式碼加⼊入版本控制內 • 流程提醒: -
working directory > staging area > commit
29.
單元總結 • 在這個單元裡我們學到了些什麼? - 什麼是
Route 以及使⽤用 Route 的好處 - Laravel 的 Route 語法 - 設定專案應⽤用程式的 Route
30.
Q & A 歡迎提問討論
Download now