タグ

ブックマーク / laravel10.wordpress.com (6)

  • メールの環境設定

    Laravel でメール送信の設定を行います。 ここではメールの送信先として mailtrap.io を使用してメールの送信テストを行います。 mailtrap.io mailtrap.io は開発で使用する SMTP のダミーサーバーです。mailtrap.io に対して送信したメールは TO で指定したメールアドレスには配信されず、mailtrap.io の管理画面でそのメールを確認することができます。無料で使えるのでメールのテストにとても便利です。 https://mailtrap.io/ まずは、mailtrap.io に Sign up してください。 Login すると、デフォルトで1つ受信ボックスが作成されています。 その受信ボックスに表示されている SMTP 情報を確認してください。 メールの設定 Mail の設定ファイルは以下の2ファイルになります。 .env confi

    メールの環境設定
    sutara_lumpur
    sutara_lumpur 2018/09/08
    mailtrap.io 知らなかった。そんな便利なサービスがあったのか。
  • サービスコンテナの依存性注入

    前々回、前回とサービスコンテナについてやって来た続きです。今回はサービスコンテナを使った、クラスのインスタンス生成と依存性の注入を試してみます。 クラス名でのインスタンス生成と依存性注入 インターフェースでの依存性注入 タイプヒントによる依存性注入 これらの機能は、これこそがLaravelの正体と言っても過言では無いくらい、あちらこちらで使われています。とても重要な機能です。 クラス名でのインスタンス生成と依存性注入 実は、サービスコンテナの make() メソッドでインスタンスを取得する際にクラス名を渡すと、事前にバインドしていなくてもクラスのインスタンスを取得することができます。 // app/Http/routes.php /* * Class */ interface SenderInterface { public function send($message); } class

    サービスコンテナの依存性注入
    sutara_lumpur
    sutara_lumpur 2017/10/23
    タイプヒントによって依存性注入を自動で行ってくれるとは。すごい。
  • 初めてのLaravel 5.6 : (32) Route Model Binding

    今回は Route Model Binding 機能を使って、コントローラを修正したいと思います。Route Model Binding とは、今までモデルの id を受け取っていた箇所で、id の代わりに、id に対応するモデルのインスタンスを受け取れる便利な機能です。 ルートの確認 php artisan route:list +--------+-----------+-------------------------+------------------+------------------------------------------------------------------------+--------------+ | Domain | Method | URI | Name | Action | Middleware | | | DELETE | articles/

    初めてのLaravel 5.6 : (32) Route Model Binding
  • 依存性の注入とは

    Laravel のドキュメントを見ていると「依存性の注入」という言葉が良く出てきます。依存性の注入は Dependency Injectionと言われ、「DI」と表記されます。また、別の表現では Inversion of Control(制御の反転)とも言われ、「IoC」と表記されます。Laravel のドキュメントでは「 loC」の方が使われています。 Laravel では、依存性の注入という概念を核としてフレームワークが作成されています。この概念を理解することが、Laravel を理解することへの近道になるかと思います。 この依存性の注入とは何でしょうか? 今回は簡単なPHPのサンプルで、この概念を理解したいと思います。 ※ Laravelを使ったソースコードでは無いのでご注意ください。 依存性の注入を使っていないケース <?php // send_message.php /* * C

    依存性の注入とは
  • ファサードとは

    Laravelを使っていると頻繁に現れるのがファサードです。Laravelの特徴とも言われています。このファサードを実際に作成しながら、理解を深めたいと思います。 なお、この記事を読み進めるにあたり、事前に以下の記事を読んでおくことを、おすすめします。 サービスコンテナ サービスコンテナのバインド サービスプロバイダーとは サービスプロバイダーの作成 ファサードとは? ファサードとは一体何でしょうか? 公式ドキュメントには以下の様に書かれています。 ファサードはサービスコンテナで利用可能なクラスへの “static” インターフェースを提供します。 ファサードはサービスコンテナからオブジェクトへのアクセスを提供するクラスです。 # 実際の使用例 ファサードは以下の様に使用します。Routeファサードを使用する例です。 Route::get('/', 'WelcomeController@i

    ファサードとは
  • SQLiteで外部キー制約(Foreign Key)が効かない時

    データベースのテーブルに親子関係を持たせて、親を削除したら、子も削除する様にしたい時、外部キー制約を設定します。しかし、SQLiteの場合は デフォルトでは外部キー制約(Foreign Key)がOFFになっています。その為、DBにつなぐ度に以下のSQLコマンドの実行が必要になります。 PRAGMA foreign_keys = ON; では、Laravel 5.1 のアプリでは何処で、”PRAGMA…” を実行すれば良いのでしょうか? 調べた結果、下記の場所で実行できました。 app/providers/AppServiceProvider.php <?php namespace AppProviders; use IlluminateSupportServiceProvider; use DB; // 追加 class AppServiceProvider extends Servic

    SQLiteで外部キー制約(Foreign Key)が効かない時
    sutara_lumpur
    sutara_lumpur 2017/05/29
    Laravel5.4でも解決しました。m(_ _)m
  • 1