編輯routes.php
Laravel 是把程式 資料庫 以及畫面分開來進行
由一個 routes.php 的檔案決定程序該送到何處進行
打開(已經有內建好了)
.\app\Http\routes.php
把原本的程式碼改成
Route::get('/', 'TestController@testview');
有三個參數
第一個 / 為網址 / 代表的是根目錄 本機跑的網址是 127.0.0.1
若打上 /abc 網址要打上127.0.0.1/abc 就能進入該程序
所以這個參數在往後是不能重複的一個網址就對應到一個程序
第二個 TestController 是連到哪個檔案 TestController為檔案名稱
儲存路徑在 .\app\Http\Controllers\目錄裡面 有個TestController.php的檔案
檔案名稱第一位需大寫 跟Controller的C 也大寫
第三個 testview就是擺放程式的function
所以這整句話的意思是
Route::get('/', 'TestController@testview');
在網址 127.0.0.1 的畫面對應到 TestController.php裡的testview裡的程式碼
編輯程式
規定好 route 後 就在.\app\Http\Controllers\ 新增TestController.php 檔案打上
namespace App\Http\Controllers;
class TestController extends Controller
{
public function testview() {
return view('helloworld');
}
}
namespace 很像是避免有重複名稱的class 所以特定指定一個路徑 去繼承
通常程式裡有extends 就必須設定namespace
class TestController extends Controller
這是固定寫法 TestController檔案名稱
extends Controller 繼承目錄裡的Controller.php
這裡就很清楚 比照Route::get('/', 'TestController@testview'); 的意思
注意的是
view('helloworld');
裡的helloworld不是輸出的文字 而是檔案名稱
Laravel是透過樣板的功能呈現頁面
而樣板檔案放置的位置就是在 .\resources\views\
在 .\resources\views\ 裡面已存在welcome.blade.php
把改名成helloworld.blade.php
打開裡面內容 就是很熟悉的HTML
裡面有一行是
這裡就很清楚 比照Route::get('/', 'TestController@testview'); 的意思
注意的是
view('helloworld');
裡的helloworld不是輸出的文字 而是檔案名稱
輸出樣板
程式寫好 要把結果輸出到頁面上Laravel是透過樣板的功能呈現頁面
而樣板檔案放置的位置就是在 .\resources\views\
在 .\resources\views\ 裡面已存在welcome.blade.php
把改名成helloworld.blade.php
打開裡面內容 就是很熟悉的HTML
裡面有一行是
<body>
<div class="container">
<div class="content">
<div class="title">Laravel
</div>
</div>
</body>
把Laravel 改成Hello World 重新讀取首頁
helloworld 就是view('helloworld'); 的檔案名稱
後面一定要加.blade 這樣 laravel 就會把裡面的HTML呈現在網頁上
資料來源
沒有留言:
張貼留言