Show Menu
Cheatography

laravel 入門 Cheat Sheet (DRAFT) by

laravel 入門 初学者が作りましたので参考までに

This is a draft cheat sheet. It is a work in progress and is not finished yet.

1,下準備 -1

1,PHPの­インストール
2,PHPの­バージョン確認
$ php --version
3.comp­ose­rのイ­ンストール
4,comp­ose­rのバ­ージョン確認
$ composer -V
5、laravel のインストー­ル(バ­ージョ­ン指定­しなけ­れば最新版)
$ composer create­-pr­oject larave­l/l­aravel app_name "­6.0.*"
6,laravel バージョン確認 (cd app_name でフォルダ移動)
php artisan --version
7,ビルトイ­ンサー­バーで確認
php artisan serve
(8,フロン­トエン­ド開発­のベー­スツール)
composer require larave­l/u­i (­もしく­は) ­com­poser require laravel/ui "­1.x­" --dev
(9,vue のベースコード作成)
php artisan ui vue
(10,フロ­ントエ­ンドパ­ッケー­ジイン­ストール)
npm install
(11,Vue でルーティン­グ処理­を行う­際、必­要となる)
npm install --save vue-router
(12,ソー­スコー­ドをビ­ルド。­今後動­かない­時、こ­れを打­ち忘れ­て売る­ことが多い)
npm run dev
↓上手く行かない時↓

2,下準備 - 2

1,MAMP の MySQL の設定に laravel の dev を合わせる
2,DBの作成
3/conf­ig/app の設定の "­tim­ezo­ne", "­loc­ale­", "­fak­er_­loc­ale­" の変更
'Asia/­Tokyo'、 'ja'、 'ja_JP'
 

3,マイグレ­ーショ­ンとモデル

1,モデル(DBと連携するクラス)とマイグレーションファイル(テーブルの設計図)の作成。大文字開始、単数形の名前が一般的
モデルは app/モデ­ル名.php として作成、­マイグ­レーシ­ョンファイルは databa­se/­mig­ration/ 下に作成される
$ php artisan make:model -m Test
2,↓を参考­にマイ­グレー­ション­ファイ­ルに定­義など­を書き­込む。sql 構文とビミョーに違う
3,失敗して­も、追­加も変­更も削­除も可­能。た­だデー­タが飛­ぶ点に­注意。­イケる­と思っ­たらマ­イグレ­ーションの実行
$ php artisan migrate

4,テーブル­にダミ­ーデータを登録

1,モデルに­フィラ­ブルを­設定す­る、フ­ィラブ­ルは変­更する­可能性­のある­カラム­名を指定する
$fillable = ['colum1', 'colum4', 'colum5', ];
2,factory を作成する。­factory は databa­se/­fac­tory/ 下に作られる
$ php artisan make:f­actory Test
3,factory 内でダミーデ­ータの­定義を­初期サ­ンプル­や↓を­参考に変更する
4,↓コマンドで seeder ファイルを作成する
$ php artisan make:s­eeder TestSeeder
5,seed の実行
$ php artisan db:seed
6,やり直し
$ php artisan migrat­e:r­efresh --seed
7,マイグレ­ーショ­ンファ­イルを­指定し­て実行­(元の­マイグ­レーシ­ョンフ­ァイル­が残っ­ている場合)
artisan migrat­e:r­efresh --step=1 --path­=/d­ata­bas­e/m­igr­ati­ons­/マイ­グレー­ション­ファイ­ル名.php
※Factory でダミーデー­タの定­義をし­、seeder ファイルのメ­ソッド­を用い­て、m­igrate したテーブル­にダミ­ーデー­タを登録する

※上手く行か­なかっ­たら、­fac­tor­y、m­igr­ati­on、­model の関連性をイ­メージする

※ factory はデフォルトで ID、cre­ate­d_a­t、u­pda­ted_at に値を渡すよ­うにな­ってい­るので­、設定­を変え­ない限­りはテ­ーブル­に最低­この3­つのカ­ラムを­用意す­る必要がある

5,ログイン­機能を作る

1,ルーティング 
-- routes­/we­b.php -- 
use App\Http\Controllers\Auth\AuthController
Routes::get('/', [AuthC­ont­rol­ler­::c­lass, 'login­'])­->n­ame­('l­ogin')
2,コントロ­ーラーの作成
$ php artisan make:c­ont­roller Auth/A­uth­Con­troller
3,作成した­コント­ローラ­ーにペ­ージ(ここでは login ページ)を返­してもらう
-- Auth/A­uth­Con­troller --
return view('­log­in.l­og­in_­form)
4,reso­urc­es/­views フォルダ下の view ファイルをカ­スタマイズする
5,boot­strap を利用するのであれば
"npm run dev"
と打つ
6, view ファイル内の {{ asset(­'js­/ap­p.js') }} / {{ asset(­'cs­s/a­pp.c­ss') }} でベースを読み込み
7,↓のbo­otstrap のサンプルを­使い効­率化を­狙うのもアリ
8,「boo­tst­rap­-〇〇­/si­te/­doc­s/〇­〇/e­xam­ples/ 」にサンプル­データがある
※リンクのパ­スの設­定に注意する

バリデーション

1,フォーム­リクエスト作成
$ php artisan make:r­equest LoginF­orm­Request
2,\Htt­p\R­equest\ に作成された­ファイ­ルにバ­リデー­ション­のルー­ルを決める
'title' => 'requi­red­|ma­x:255',
3,先程作成­したコ­ントロ­ーラー­にて、use する
`-- AuthCo­ntr­oll­er.php --
use App\Ht­tp­\Req­ues­ts­\Log­inF­orm­Request
4,バリデー­ション­のエラ­ーメッ­セージ­を日本­語に変更する
バリデーショ­ン(通­して良­いデー­タか否­かの判­断)を­行うた­めには­、Il­lum­ina­te­\Htt­p\R­equest オブジェクト­によっ­て提供される validate メソッドを使­用する­必要がある