0

ドメイン クラスとそれに関連付けられたドメイン クラスの複雑な検索可能な構成があります。約 200 件 (最大 200 件) の結果を検索すると、応答に時間がかかりすぎます。

結果セットには、ドメイン クラスでの検索用に指定されたすべてのフィールド (単純または関連付け) があります。ID リストのみを返し、ドメイン クラスの他のフィールドを無視する必要があります。出来ますか?検索を高速化するためにこれを行いたいです。この ID リストは、別の SQL を使用しないデータベースのクエリに使用されます。すべてのフィールドを取得すると、検索が遅くなるようです。

4

1 に答える 1

1

プロパティストアnoに設定することで、あなたが望むものを達成できると思います(プロパティを検索可能にしますが、返さないでください)。

例えば:

class MyDomain {
    String name
    String email

    static searchable = {
        email index:'analyzed', store:'no'
        name index:'analyzed'
    }
}

このドメインでは、名前と電子メールがインデックス化されて分析される (検索できるようにする) と言いますが、電子メール プロパティは保存されていないため、オブジェクトが返されると null になります。その他のプロパティについては、http: //grails.org/Searchable+Plugin+-+Mapping+-+Searchable+Propertyを確認してください。

于 2013-05-23T05:58:57.810 に答える