수평 기록

5401 단어 Laravel

뷰 주위


사용자 인증 주변 코드
php artisan make:auth
laravel6,7계는 상기 코드를 사용할 수 없습니다
$ composer require laravel/ui
$ php artisan ui vue --auth
위 코드 대체
다음 코드를 실행하여 JavaScript 패키지 설치 및 컴파일
$ npm install && npm run dev

테이블 만들기

$ php artisan make:migration create_tablename_table
테이블을 만들고 up 함수에 추가할 열을 표시합니다
down 함수에 삭제할 열 등 기재
만든 후 모델과 연결해야 합니다

모델 생성하기

$ php artisan make:model モデル名 -m
$ php artisan migrate
모델에 명명 규칙이 있습니다. 테이블 이름은 복수 형식으로 명명해야 하고, 모델 이름은 테이블 이름의 단수 형식이어야 합니다.
1対多 hasMany('App/Post');
逆 belongsTo('App/User');
1対1 hasOne
それぞれApp/モデル名っぽい

호출 시 처리


app/Http/Middleware/Authenticate.php
use Illuminate\Support\Facades\Auth;
class Authenticate
{
    public function handle($request, Closure $next)
    {
        if (!Auth::check()) { // 非ログインはログインページに飛ばす
            return redirect('/login');
        }
        return $next($request);
    }
}

의 app/Http/Middleware/Authenticate입니다.php에 기술하여 로그인하지 않으면 로그인 화면으로 이동

라우팅 설정


/routes/web.php
Route::resource('表示したいURL', 'コントローラー名');
php artisan route:listで表示できるコントローラーの一覧が出てくる

컨트롤러 생성

$ php artisan make:controller コントローラー名
もしrouteをresourceで書いているなら
$ php artisan make:controller --resource コントローラー名
/app/Http/Controllers/만든 Controller 파일
viewを表示したい時
return view('viewのフォルダ名.bladeより上のファイル名')

view


모 뷰 파일 만들기
views/layouts/index입니다.blade.나 php 했어.
하위 폴더를 만듭니다.이것은 컨트롤러가 지정한view 파일입니다. 하위 파일은 이렇게 기술되며, 부모 파일의 기술도 하위 파일에 직접 반영됩니다.
layouts/index.blade.php
<!doctype html>
<html lang="ja">
<head>
 <meta charset="UTF-8">
 <title>Example</title>
</head>
<body>
 <div class="container">
  <h1>親のページです</h1>

  @yield('content')

 </div>

@yield('footer')
</body>
users/index.blade.호출자
@extends('layouts.index')←layoutsフォルダの中にあるindexフォルダ呼び出し

@section('content')←indexフォルダのなかのcontentをのところに記述されるようになる
<h1>子のページです</h1>
@endsection←終了
위 실행 결과

코드를 원활하게 할 수 있다

view에 데이터베이스 내용을 표시하고 싶어요.


컨트롤러 측 처리


UsersController
// 使用するテーブルの記載
use App\User;

public function index()
{
// $usersにUserテーブルにある全レコードを格納
 $users = User::all();
 return view('users.index', compact('users'))
}
//compactは変数名と名前が一致すると自動的に変数として扱ってくれる

view 측면 처리


index.blade.php
@if($users)
 @foreach($users as $user)
  <p>{{ $user->id }}</p>
  <p>{{ $user->name }}</p>
  <p>{{ $user->email }}</p>
 @endforeach

좋은 웹페이지 즐겨찾기