前回は多対多のリレーションの DB とモデルを実装し、tinker で動作確認を行いました。今回は記事の新規作成画面、編集画面から多対多のリレーションを扱いたいと思います。
月: 2015年3月
初めてのLaravel 5.6 : (33) 多対多のリレーション モデル/DB編
今回は記事にタグを付与する機能を追加します。この機能の実装で、多対多のリレーションを学びます。
依存性の注入とは
Laravel のドキュメントを見ていると「依存性の注入」という言葉が良く出てきます。依存性の注入は Dependency Injectionと言われ、「DI」と表記されます。また、別の表現では Inversion of Control(制御の反転)とも言われ、「IoC」と表記されます。Laravel のドキュメントでは「 loC」の方が使われています。
Laravel では、依存性の注入という概念を核としてフレームワークが作成されています。この概念を理解することが、Laravel を理解することへの近道になるかと思います。
この依存性の注入とは何でしょうか?
今回は簡単なPHPのサンプルで、この概念を理解したいと思います。
※ Laravelを使ったソースコードでは無いのでご注意ください。
初めてのLaravel 5.6 : (32) Route Model Binding
今回は Route Model Binding 機能を使って、コントローラを修正したいと思います。Route Model Binding とは、今までモデルの id を受け取っていた箇所で、id の代わりに、id に対応するモデルのインスタンスを受け取れる便利な機能です。
初めてのLaravel 5.6 : (31) Relationships
今回は、モデルで1対nのリレーションを扱いたいと思います。ユーザーが複数の記事を持つ様に、User モデルと Article モデルを関連付けます。
初めてのLaravel 5.6 : (30) Middleware
ログインが出来るようになったので、記事の作成や編集、削除はログインしていないと実行出来ないように制限をかけたいと思います。Laravel ではこれらのフィルタリングをミドルウェアの中で実行します。
初めてのLaravel 5.6 : (29) 認証(その2)
初めてのLaravel 5.6 : (28) 認証(その1)
Laravel 5.6 ではプロジェクトを作成した時点で、ユーザ登録、ログイン認証、パスワード再設定の機能がすぐ使えるように、コントローラが用意されています。また、これらの機能を使うためのルーティング設定やビューの作成も artisan コマンドで生成してくれます。今回は、ユーザ登録とログイン認証の実装を行います。
初めてのLaravel 5.1 : (27) Implicit Controllers
Implicit Controllers は Laravel 5.2 で廃止になりました。
今回は、コントローラ内の全てのメソッドを1行のルート設定で簡単に定義できる、Implicit Controllers(暗黙コントローラ)を試してみます。
laravel-ide-helper
PHPStorm等の IDEを使って Laravelの開発を行う時に便利な laravel-ide-helper を紹介します。
Laravelではファサードを多用するのですが、IDEはファサードを補完することが出来ません。laravel-ide-helperは ヘルパーファイルを作成することで、IDEがファサードを補完出来るようにするパッケージです。