laravel的路由(router)圖文詳解

來源:互聯網
上載者:User
這篇文章主要介紹了關於laravel的路由(router)圖文詳解,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

laravel的路由(router)圖文詳解

laravel基礎的路由:

在/routes/web.php裡面, 寫一個

Route::get('/hello',function(){    return 'hello , can you hear me ?';});

然後就能在瀏覽器裡

postman也可以直接看到

原文:

我們先試一下調用控制器:

Route::get('/menu','Menu\MenuIndexController@index');

這就是直接get請求發送about, 調用StaticPagesController控制器的about方法

<?phpnamespace App\Http\Controllers\Menu;//修改命名空間use App\Http\Controllers\Controller;//引用基礎controlleruse Illuminate\Http\Request;class MenuIndexController extends Controller{    //    public function index(){        return view('menu/index');    }}

跳轉到view:

@extends('layouts.default')@section('content')<h5>菜單頁</h5>@stop@section('title','菜單頁')

瀏覽器效果:

定義在routes/api.php檔案中的路由通過app/Providers/RoutesServiceProvider的處理被嵌套在一個路由中介軟體組中, 在這個路由中介軟體組中, 所有路由會被自動添加/api首碼, 所以你不需要再到路由檔案中為每個路由手動添加, 你可以通過編輯RouteServiceProvider類來修改路由首碼以及其他的路由中介軟體組選項;

這一坨就別去改動了, 底層的東西改了不知道會發生什麼神奇的事情;

有時候還需要註冊一個路由響應多種 HTTP 要求動作 —— 這可以通過 match 方法來實現。或者,可以使用 any 方法註冊一個路由來響應所有 HTTP 要求動作:

Route::match(['get','post'],'returnReturn','Menu\MenuIndexController@returnReturn');Route::any('returnAny','Menu\MenuIndexController@returnAny');

路由重新導向:

如果需要定義一個重新導向到其他URI路由, 可以使用Route::redirect

Route::redirect('motherfucker','menu',301);

瀏覽器輸入motherfucker就會蹦到menu;

301是一個狀態代碼,預設301,原文:

當然還有需要直接跳轉到視圖層(view), 然後其餘資料(maybe whole data)都由api提供擷取, 那麼直接跳到視圖的路由是這麼玩的:

Route::view('staticView','static_pages/staticView');

注意, 這裡的static_pages/staticView是用的正斜杠, 反斜線會報錯說can not found static_pages\staticView;

靜態頁面位於:

瀏覽器直接存取效果:

當然還有另外一種騷操作, 就是Route::view傳遞第三個參數, 用於視圖中的資料渲染

Route::view('staticViewData','static_pages/staticViewData',['name'=>'jack','like'=>'money']);

傳遞過去的數組自然就是['name'=>'jack','like'=>'money'],

頁面上用法:

@extends('layouts.default')@section('content')<h2>this is static view data</h2>{{$name}} likes {{$like}} @stop()@section('title','static view data')

然後瀏覽器效果:

當然了你要皮, 那自然是不可以的:

Route::view('staticViewData','static_pages/staticViewData',['name'=>'jack','like'=>'money','jump'=>'<a href="/about">']);

原始碼會把標籤給當作普通文字解析, 前後加上< &rt;

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.