1

Zend フレームワーク 1.12 プロジェクトにデータ マッパーを実装しており、期待どおりに正常に動作しています。さらに強化するために、次の方法で最適化したいと考えています。

モデル テーブルの 10 個のフィールドから 3 個のフィールド データを取得したいのですが、どのようなデータを取得していますか? - 現在の問題は、必要な値のみをフェッチすると、ドメイン オブジェクト クラスの他の値が空白のままになり、そのデータを保存している間、モデル オブジェクトが単一のフィールド値ではないときに保存されます。

必要な値のみを取得/更新でき、レコードを更新するためにすべてのフィールドデータを取得する必要がないように、これを行う効率的な方法を提案できますか?

4

1 に答える 1

1

プロパティがNULLの場合、更新を作成するときに無視しますか?NULLが有効な値である場合、プロパティごとにロード済み/ダーティ状態を追跡する必要があると思います。

マッパーを呼び出すときに取得するフィールドをホワイトリストに登録するにはどうすればよいですか?その情報を永続化できれば、更新を作成するときにその知識を活用するのが理にかなっていると思います。

私は通常、この道をたどりません。意味がある場合はモデルに特定のフィールドを遅延ロードしますが、このようなオブジェクトの一部をロードすることは許可しません。オブジェクト全体をロードするのにリソースを大量に消費する場合に、リストのレンダリングに使用する代替オブジェクトを作成します。表形式のデータで使用する一般的なダミーリストオブジェクト。これは、SQLまたはストアドプロシージャの結果セットから、通常は汎用テーブルマッパーを使用して入力されます。

于 2013-02-26T17:22:31.493 に答える