ホームページ  >  記事  >  バックエンド開発  >  Laravelのグローバルデータ処理について

Laravelのグローバルデータ処理について

WBOY
WBOYオリジナル
2016-09-08 08:43:501581ブラウズ

laravelでは、ミドルウェアを介して認証情報を処理したり、ビジネスロジック処理を設計したりする場合があります

これらのデータはミドルウェアで処理された後、どこに保存されるべきですか?
たとえば、userObject のようなオブジェクト、または後続のロジック (サービス層、モデル層、ビュー層) が使用される可能性があります。取得してミドルウェアで処理されたデータを配置する必要があります (1 つのリクエスト内)

フレームワークを使用しない場合、通常はストレージ用のスーパー変数を定義します。MVCではグローバル変数を使用することは推奨されていないようですが、Laravelでは通常どこに配置されますか?

セッションアプリコンテナーの下に保存できることはわかっていますが、それが最善の解決策とは思えません。

返信内容:

laravelでは、ミドルウェアを介して認証情報を処理したり、ビジネスロジック処理を設計したりする場合があります

これらのデータはミドルウェアで処理された後、どこに保存されるべきですか?

たとえば、userObject のようなオブジェクト、または後続のロジック (サービス層、モデル層、ビュー層) が使用される可能性があります。取得してミドルウェアで処理されたデータを配置する必要があります (1 つのリクエスト内)

フレームワークを使用しない場合、通常はストレージ用のスーパー変数を定義します。MVCではグローバル変数を使用することは推奨されていないようですが、Laravelでは通常どこに配置されますか?
セッションアプリコンテナーの下に保存できることはわかっていますが、それが最善の解決策とは思えません。

ミドルウェアは、リクエスト/レスポンスをフィルターするために使用される単なるパイプラインです。データをデータベースに保存する必要がある場合は、Eloquent を使用するか、データを保存する必要がある場合は、セッションを保存します。

メモリに保存します。たとえば、現在のユーザーの場合、

または現在の認証済みユーザーに関連するその他のコードを呼び出すと、対応する UserModel がトリガーされて、ユーザー オブジェクトがこのリクエストで生成されていない場合は、データベースまたはキャッシュを選択して続行します。

他のすべての変数、プロバイダー、バインディング、依存関係注入、エイリアスなどはすべてこのロジックに基づいています。また、パフォーマンスを向上させるための非常に柔軟なロード方法を備えています。ルーティング、設定のキャッシュ、遅延などの読み込みなど。

このセットは、Laravel の中核となるコンテナーに基づいています。公式ドキュメントでは、これらの概念について最初から説明されています。ドキュメントについては、「コアコンセプト」を参照してください。

Laravel のカスタマイズ可能なブートストラップ起動プロセスでは、通常、最初のステップは大きなコンテナであるアプリケーションをロードすることです。現在のアプリのデータ読み込みステータスをどこでも確認できます

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。