Laravel

Laravel

【Laravel】Eloquentのリレーション:hasMany・belongsToの使い分け

こんにちは、かつコーチです。前回はEloquentの基本操作を解説しました。実際のアプリケーションでは、「投稿」と「コメント」、「ユーザー」と「投稿」のように、テーブル同士が関連し合っているケースがほとんどです。今回は、Eloquentでテ...
Laravel

【Laravel】Eloquentとは?Laravelの顔ともいえるORMを理解する

こんにちは、かつコーチです。前回はMigrationを使って、テーブル構造をコードで管理する方法を解説しました。テーブルが作れるようになったら、次はそのテーブルのデータをPHPのコードから読み書きする番です。今回はLaravelの中でも特に...
Laravel

【Laravel】Migrationの基本:テーブルをコードで管理する

こんにちは、かつコーチです。前回まででルーティングとコントローラの基本的な応用を見てきました。ここからはデータベース編に入っていきます。最初のテーマは、Laravelでテーブルを作成・変更するときに欠かせない「Migration(マイグレー...
Laravel

【Laravel】Route Model Bindingで自動的にモデルを取得する

こんにちは、かつコーチです。前回はNamed Routeについて解説しました。今回は、URLのパラメータを扱うコントローラをもっとシンプルに書ける「Route Model Binding」を紹介します。「IDを受け取って、モデルを検索して、...
Laravel

【Laravel】Named Routeでルートに名前をつけるメリット

こんにちは、かつコーチです。前回は、リダイレクト処理のパターンについて解説しました。その中で redirect('/mypage') のようにURLを直接書くコードが何度か出てきましたが、実は現場のLaravelコードではあまり見かけません...
Laravel

【Laravel】リダイレクト処理のパターン集

こんにちは、かつコーチです。前回は、セッションとフラッシュメッセージの使い方を解説しました。ここまでで、フォームを受け取り、バリデーションし、結果をフラッシュメッセージとして保存する、という一連の流れが揃いました。最後に必要になるのが、「処...
Laravel

【Laravel】セッション・フラッシュメッセージの使い方

こんにちは、かつコーチです。前回は、バリデーションで入力値をチェックする方法を解説しました。バリデーションを通過して無事にデータが保存できたとき、「登録が完了しました」というメッセージを画面に表示したい場面はとても多いです。このとき使われる...
Laravel

【Laravel】Laravelのバリデーション(Validation)の書き方

こんにちは、かつコーチです。前回は、Requestオブジェクトでフォームの値を受け取る方法を解説しました。ただ、値を受け取れるようになっても、それがそのまま「正しい値」とは限りません。メールアドレスの形式が違っていたり、必須項目が空だったり...
Laravel

【Laravel】Requestオブジェクトでフォームの値を受け取る

こんにちは、かつコーチです。前回は、Bladeコンポーネントで画面のパーツを再利用する方法を解説しました。画面が作れるようになったら、次に気になるのは「フォームに入力された値を、コントローラ側でどう受け取るか」ですよね。PHPの生の書き方だ...
PHP

【Laravel】Bladeコンポーネントで再利用可能なパーツを作る

こんにちは、かつコーチです。前回は、Bladeテンプレートの基本文法を解説しました。@if や @foreach、@extends などを使えば、動的なHTMLはひと通り書けるようになります。ただ、実際に画面を作っていくと、同じ見た目のパー...
Laravel

【Laravel】Bladeテンプレートの基本文法

こんにちは、かつコーチです。前回はMiddlewareで共通処理を挟む仕組みを解説しました。Route → Controller → Middlewareと進み、ようやくアプリの「表側」、つまり画面の見た目を作る部分にたどり着きました。La...
Laravel

【Laravel】Middlewareとは?認証チェックなどの共通処理を挟む仕組み

こんにちは、かつコーチです。前回はControllerの作り方を解説しました。RouteとControllerでリクエストの処理ができるようになると、次に気になってくるのが「ログインしていない人にはこのページを見せたくない」といった共通のチ...
Laravel

【Laravel】Controllerの作り方とArtisanでの生成方法

こんにちは、かつコーチです。前回はRoute設計の整理術を解説しました。ここまでの記事では、ルートの処理をクロージャ(function () {...})にそのまま書いてきました。小さなアプリならそれでも動きますが、処理が増えてくると ro...
Laravel

【Laravel】LaravelのRoute設計で迷わないための整理術

こんにちは、かつコーチです。前回は Route::get を使った基本のルーティングを解説しました。小さなアプリならそれで十分ですが、機能が増えてくると routes/web.php はあっという間に肥大化します。私自身、個人開発でルートが...
Laravel

【Laravel】Laravelのルーティング基礎:Route::getから学ぶ

こんにちは、かつコーチです。前回までにArtisanコマンドの使い方を確認して、Laravelを操作する準備が整いました。ここからは、いよいよLaravelアプリの中身を作っていきます。最初に学ぶべきは「ルーティング」です。Laravelに...
Laravel

【Laravel】Artisanコマンド入門:よく使うコマンドまとめ

こんにちは、かつコーチです。前回、.envファイルの役割を解説した際に、php artisan key:generateというコマンドを実行しました。「artisan」という単語、実はこれまでも何度かさらっと登場していました。今回は、Lar...
Laravel

【Laravel】.envファイルの役割と設定方法

こんにちは、かつコーチです。前回、Laravelのディレクトリ構造を見ていきましたが、プロジェクト直下に.envという見慣れないファイルがあったのに気づいたでしょうか。先頭にドットが付いていて、フォルダによっては表示されないこともあるファイ...
Laravel

【Laravel】Laravelのディレクトリ構造を理解する

こんにちは、かつコーチです。前回、Laravel SailかXAMPPかで環境を作り、初期画面を表示するところまで進みました。作成されたプロジェクトフォルダを開くと、大量のフォルダとファイルが並んでいて、最初は面食らった方も多いのではないで...
Laravel

【Laravel】Laravelの開発環境を作ろう:Docker・MAMP/XAMPP・Laravel Sail、結局どれを選ぶべき?

こんにちは、かつコーチです。前回、Laravelの特徴と魅力について解説しました。「じゃあ実際に触ってみよう」となったとき、最初にぶつかる壁が環境構築です。調べてみると、Docker、MAMP、XAMPP、Laravel Sailと、いろい...
Laravel

【Laravel】Laravelとは?非エンジニアにもわかる特徴と魅力

こんにちは、かつコーチです。PHP基礎編を完走した方、お疲れさまでした。変数、条件分岐、ループ、関数、クラス、DB操作と、PHPの基本を一通り触ってきましたね。ここからは、いよいよ「Laravel編」です。「PHPは分かってきたけど、Lar...