이 글은 주로 Laravel 프레임워크 라우팅과 컨트롤러의 바인딩 작업 방법을 소개하며, Laravel 프레임워크 라우팅과 컨트롤러 바인딩의 작업 단계, 구현 방법 및 관련 주의 사항을 예제 형식으로 분석합니다.
The 이 기사의 예제에서는 Laravel 프레임워크 라우팅 및 컨트롤러의 바인딩 작업 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.
라우팅과 컨트롤러의 관계
라우팅 파일 주소는 appHttproutes.php입니다.
Route::get('/', function () { return view('welcome'); }); Route::get('/hi', function () { return 'hello world'; });
위는 모두 익명 함수에 바인딩된 경로입니다. 비록 뷰나 문자열을 반환할 수 있지만 본질은 동일합니다.
Route::get('/blog','BlogController@index'); Route::get('/post/{slug}','BlogController@showPost');
이 두 가지는 컨트롤러에 바인딩된 경로입니다. 컨트롤러 클래스 BlogController, index 및 showPost 아래에 두 가지 함수가 있습니다.
그렇다면 어떤 것을 선택해야 할까요?
익명 함수에서는 복잡한 비즈니스 로직을 작성할 수 없으므로 새로운 컨트롤러를 만드는 방법을 배워야 합니다.
Route::get('/mvc', 'MyController@hello');
새 컨트롤러 추가
컨트롤러 폴더 주소는 Laravel 폴더 appHttpControllers 아래에 있습니다. 우리는 계속해서 artisan 콘솔을 사용하여 새 컨트롤러를 만듭니다
php artisan make:controller MyController
엔 , 컨트롤러 디렉토리로 돌아가면 새로운 MyController.php 파일이 생성되고 코드는 다음과 같습니다.
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Http\Requests; class MyController extends Controller { // }
MyController 클래스를 수정하고 동시에 뷰를 생성합니다.
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Http\Requests; class MyController extends Controller { public function hello() { return View('myview'); } }
이렇게 작성하면 사용자가 URL:laravel/public/mvc를 방문하면 라우팅이 MyController 컨트롤러의 hello 함수로 넘겨지고 hello 함수가 myview 뷰, 즉 myview.blade .php
를 반환합니다. myview.blade.php
@extends('layouts.app') @section('content') <p class="container"> <p class="row"> <p class="col-md-10 col-md-offset-1"> <p class="panel panel-default"> <p class="panel-heading">{{ $d1 }}</p> <p class="panel-body"> this is my view! </p> </p> </p> </p> </p> @endsection
여기의 {{ $d1 }}
는 변수 값으로 대체되기를 원하므로 MyController 컨트롤러를
class MyController extends Controller { public function hello() { return View('myview',['d1'=>'a1']); } }
위 내용은 모두의 학습에 도움이 되기를 바랍니다.
관련 권장 사항:
위 내용은 Laravel 프레임워크 경로 및 컨트롤러의 바인딩 작업 정보의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!