0

Symfony2 の管理バックエンドとして Sonata Admin を使用しています。管理エンティティ (トランザクション) が別のエンティティ (レート) と多対 1 の関係を持つページを読み込もうとしています。料金表は非常に大きく、急速に拡大します。これを変更するために私にできることは実際には何もありません。

トランザクション リスト ページにアクセスすると、メモリ サイズが不足しているというエラーが発生します。これがデータベースの問題であると仮定して (コードがローカル環境で動作するため)、トランザクション テーブルをクリアしても問題は発生しました。料金表をクリアすると、ページがすぐに読み込まれました。これは、関連するエンティティが管理ページに熱心に読み込まれていることを意味しているとしか思えません。

Sonata に関連エンティティを遅延ロードさせる方法を知っている人はいますか? 私はドキュメントとフォーラムに目を通しましたが、私が見た唯一のものは、関連性がないか、Sonata が自動的に遅延読み込みを行うと言っています。アイデア?

4

1 に答える 1

0

問題が見つかりました。Sonata は遅延ロードする場合としない場合がありますが、それは問題ではありません。configureListFields() 関数に到達することすらありませんでした。代わりに、多くの行を持つフィールドをフィルターに追加したくない場合は、実行時にすべてのオプションをロードするようです。

于 2012-02-08T07:16:20.987 に答える