EloquentはLaravelのActiveRecordパターンの実装であり、すべての長所と短所があります。
Active Recordは、単一のエンティティをCRUD方式で処理するための優れたソリューションです。つまり、プロパティが入力された新しいエンティティを作成し、それをデータベースに保存するか、データベースからレコードをロードするか、削除します。
ダーティチェック(変更されたフィールドに対してのみSQL UPDATEを送信する)、モデルイベント(管理アラートを送信したり、誰かが新しいアカウントを作成したときに統計カウンターを更新したりする)、特性(タイムスタンプ、ソフト削除、カスタム特性)熱心な/遅延読み込みなど。ドメイン駆動パターンを適用して、検証、関係の管理、計算などのビジネスロジックの一部をActiveRecordエンティティに実装することもできます。
>しかし、すでにご存知のように、ActiveRecordにはパフォーマンスの代償が伴います。
1つのレコードまたはいくつかのレコードを処理する場合、心配する必要はありません。ただし、大量のレコードを読み取る場合(データグリッド、レポート、バッチ処理など)、プレーンなLaravel DB
メソッドはより良いアプローチです。
Laravelベースのアプリケーションでは、適切と思われる両方のアプローチを使用しています。 UIフォームにLaravelのEloquentを使用して、単一のレコードを処理し、DB
を使用します UIテーブル、エクスポートタスクなどのデータを取得するためのメソッド(追加のデータベースエンジン固有のパフォーマンス調整を伴うSQLビューに基づく)。RESTfulAPIでもうまく機能します-GET、PUT、POST、キーを使用したDELETE、およびDB
キーなしで、フィルターとソートおよびページングを使用したGETの場合。