
Laravel 目錄結構
/app/Http/Controllers:make request、routes 設定。
/config: 註冊外掛進入 packages、database 連線 (但是連線資訊都設定在根目錄的 .env)、mail 連線。
/database/migration:透過檔案建立資料,會非常常用。
/public:css folder、javascript folder、image folder。
/resources/views:存放畫面的位置,跟 controller 保持連線。
/vendor:存放套件的地方。
Route 設定 - 路由設定官方文件
修改 /app/Http/routes.php
傳 id, name 兩個變數到頁面的範例。
1 | Route::get('/post/{id}/{name}', function($id, $name){ |
路由命名法
查詢路由狀態。
php artisan route:list
將路由用簡短的方式命名,以下用admin.home
來取得路由。
1 | Route::get('admin/posts/example', array('as'=>'admin.home' ,function(){ |
Controller - Controller 設定官方文件
- Controller 是用來處理來自 database 資訊的 class,然後將資料丟到 view (反之亦然)。
- Controller 路徑 - /app/Http/Controllers/Controller.php。
- 用 terminal 創建一個 Controller。
php artisan make:controller PostsController(Name)
php artisan make:controller --resource PostsController(Name)
在路由設定 Controller
- 設定 routes.php
Route::get('/post', 'PostsController@index');
(讀取 Controller 的 index) - 修改 PostsController.php
public function index() {return 'its working';}
在 Controller 傳送 data
- 設定 routes.php
Route::get('/post/{id}', 'PostsController@index');
(讀取 Controller 的 index) - 修改 PostsController.php
public function index($id) {return 'its working the number' . $id;}
Resources & Controller
- 設定 routes.php - 用 resource 的做法會產生 GET、DELETE、PUT…等不同 Method。
Route::resource('posts', 'PostsController');
- 檢查路由狀態
php artisan route:list
- 測試 show method
public function show($id) {return "This is the show method yaaa" . $id;}
- 測試 create method
public function create() {return "I am the method that creates stuff:)";}