【本書の概要】
デジタルハリウッド・ジーズアカデミーなどでLaravel講座をもつ著者が、多くの受講生の声を反映して執筆したLaravelの入門書です。
サンプル作りを通して、LaravelによるWebアプリの設計・作成の基本、ルーティング、リエクスト処理、ビュー、認証、ページネーション、モデルのリレーション、ファイルアップロードの基本などを一通り学ぶことができます。
【Laravelとは】
LaravelはMicrosoftの.NETの開発に関わっていたTaylor Otwell氏によって開発され、
PHPの世界で最も人気のあるフレームワークの1つです。
【本書の開発環境について】
本書の開発環境はAWS Cloud9を利用しています。
WindowsもしくはmacOSでLaravelの環境を作ろうとすると、環境構築に1、2時間を要してしまうことがかなりあります。
その点、ブラウザだけで開発できるAWS Cloud9を利用すれば、開発環境を手軽に設定できるため非常に効率よく学習することができます。
【Laravelのバージョン】
Laravel 6.x(LTS)
【読者対象】
LaravelによるWebアプリ開発初心者
【本書のゴール】
本書を読み終わった後、基本的なLaravelの利用方法を習得できることを目的としています。
【著者プロフィール】
山崎大助(やまざき・だいすけ)
ジーズアカデミー学校長。デジタルハリウッド大学大学院 教授。
専門はフロントエンド、Webアプリケーション。
2013年 全世界で9人しかいないMicrosoft MVP(Bing Maps Development)の1人として受賞、
現在もMicrosoft MVP(Developer Technologies)を受賞している。
著書に『レスポンシブWebデザイン「超」実践デザイン集中講義』(SBクリエイティブ)、
『jQueryレッスンブック jQuery2.X/1.X対応』(ソシム)がある。
公開しているWebサービスに『LaravelDB.com』『BingMaps GO!』がある。
デジタルハリウッド・ジーズアカデミーなどでLaravel講座をもつ著者が、多くの受講生の声を反映して執筆したLaravelの入門書です。本管理アプリのサンプル作りを通して、LaravelによるWebアプリの設計・作成の基本、ルーティング、リエクスト処理、ビュー、認証、ページネーション、モデルのリレーション、ファイルアップロードの基本などを一通り学ぶことができます。
Windows/macOS/Linuxのどの環境でも最新のブラウザがインストールされていれば同じ画面で操作できるAWS Cloud9を使用しています。
本書では本管理アプリの作成を通じて、Laravelの基本を学ぶことができます。
Laravelフレームワークを使った開発ではコマンドをよく使います。よく使うコマンドを、まとめて紹介しています。
Chapter 1 PHPフレームワーク「Laravel」とは
01 Laravelフレームワークとは
02 まとめ
Chapter 2 開発環境の準備
01 Laravelの開発環境について
02 AWS Cloud9を利用する
03 まとめ
Chapter 3 Laravelのインストール
01 本書でよく使うコマンドやコードについて
02 AWS Cloud9の環境準備
03 Laravelフレームワークの準備
04 毎回使うコマンド
05 データベース環境の準備
06 MySQLを使用しない場合(SQLiteを選択する)
07 Laravelのルートディレクトリ:フォルダ構成について
08 まとめ
Chapter 4 練習アプリ:本管理アプリを作る
01 練習アプリ「本管理アプリ」を作る流れ
02 AWS Cloud9の設定を変更する:隠しファイルを表示する
03 MySQLデータベースとの接続を設定する
04 AWS Cloud9の設定を変更する:自動保存の設定にする
05 まとめ
Chapter 5 本管理アプリ:データベースにテーブルを作成する
01 テーブルを定義するマイグレーションファイルについて
02 マイグレーションファイルでbooksテーブルを定義する
03 まとめ
Chapter 6 本管理アプリ:モデルを作成する
01 Eloquent(エロクイント)モデルを利用する
02 モデルのルールを変更する方法
03 まとめ
Chapter 7 本管理アプリ:ルート定義を作成する
01 ルート定義について
02 ルート定義のスケルトンを作成する
03 まとめ
Chapter 8 本管理アプリ:ログイン認証機能を追加する
01 ログイン画面とレジスター画面を確認する
02 ログイン機能とレジスター機能を実装する
03 ログイン実装用のコマンドについて
04 まとめ
Chapter 9 本管理アプリ:レイアウトとビューを作成する
01 ビューについて(レイアウト・テンプレート)
02 レイアウトとビューを作成する
03 Bladeテンプレートの変数について
04 「JavaScript&CSS」ファイルの配置場所は「public」フォルダになる
05 まとめ
Chapter 10 本管理アプリ:本の追加登録処理を作成する
01 本の追加登録処理を作成する
02 送信データの確認を行う/本の登録処理を作成する
03 まとめ
Chapter 11 本管理アプリ:本を一覧表示する機能を作成する
01 登録している「本」を一覧表示する機能を作成する
02 Bladeテンプレートの制御構文について
03 まとめ
Chapter 12 本管理アプリ:本のデータ削除機能を作成する
01 本のデータ削除機能を作成する
02 課題1(課題1.1、1.2)
03 課題1(課題1.1、1.2)の解答について
04 課題1.1の解答
05 課題1.2の解答
06 まとめ
Chapter 13 本管理アプリ:ルート定義以外の各処理をコントローラに移動する
01 ルート定義からコントローラに各処理を移動する
02 コントローラについて
03 ルーティング・コントローラ・ビューの流れ
04 BooksControllerを作成(更新処理)する
05 コントローラへ登録処理を追加する
06 課題2(課題2.1、2.2、2.3)
07 課題2.1の解答
08 課題2.2の解答
09 課題2.3の解答
10 まとめ
Chapter 14 本管理アプリ:ページネーションを使用する
01 ページネーションを使用する
02 まとめ
Chapter 15 本管理アプリ:SESSIONを利用する
01 SESSIONの仕組み
02 SESSIONを利用する
03 まとめ
Chapter 16 本管理アプリ:ログイン認証機能を追加する
01 ログイン認証の処理を追加する
02 Route::groupを使ったログイン認証について
03 ログイン認証したユーザー情報を取得する
04 ログイン認証したユーザーが登録した情報のみを表示させる
05 まとめ
Chapter 17 本管理アプリ:ファイルのアップロード機能を追加する
01 ファイルのアップロード機能を追加する
02 まとめ
Chapter 18 本管理アプリ:モデル記述コードのチェック(tinker)・テストデータの自動生成(Seeder)を行う
01 tinkerコマンドでモデルの記述コードを確認する
02 Seeder(テストデータを自動生成)による処理を実装する
03 まとめ
Chapter 19 本管理アプリ:バリデーションメッセージを日本語化する
01 英語のバリデーションメッセージを日本語化する
02 まとめ
Chapter 20 本管理アプリ:デバッグ用ヘルパー関数を利用する
01 デバッグ用のddd()関数を利用する
02 まとめ
Chapter 21 本管理アプリ:phpMyAdmin管理ツールをインストールする
01 phpMyAdmin管理ツールをインストールする
02 まとめ
Chapter 22 モデルで利用できる便利なメソッド
01 モデルのメソッド
02 まとめ
Chapter 23 Eloquentリレーションから見るモデルとリレーションの関係
01 Eloquentリレーションについて
02 まとめ