私はタグを使用しているときにパフォーマンスの問題があります。データベースのいくつかのテーブルには何千ものレコードがあり、Grailsのいくつかのフィールドを編集しようとすると、そのタグはテーブル内のすべてのレコードのドロップダウンリストを生成し、実際のパフォーマンス上の問題やEndOfMemorryErrorが発生することがあります。生成されたhtmlは膨大ですが、私はリストのオートコンプリートメソッドを実装しようとしましたが、結果は満足できませんでした。なぜなら、これは私の300 Javaクラスのグローバルソリューションでありたいと思います。私のクラスの各1つ、今私の考えは、ページ設定を使用してレコードを表示するポップアップウィンドウでドロップダウンリストを変更しようとすることです。私は私がrenderEditor.templateにこのコードを変更する必要が信じて:Grails足場選択
private renderManyToOne(domainClass,property) {
if (property.association) {
def sb = new StringBuilder()
sb << '<g:select'
// id is "x" and name is "x.id" as the label will have for="x" and "." in an id will confuse CSS
sb << ' id="' << property.name << '"'
sb << ' name="' << property.name << '.id"'
sb << ' from="${' << property.type.name << '.list(max: 10, offset: offset)}"'
sb << ' optionKey="id"'
if (isRequired()) sb << ' required=""'
sb << ' value="${' << "${domainInstance}?.${property.name}" << '?.id}"'
sb << ' class="many-to-one"'
sb << renderNoSelection(property)
sb << '/>'
sb as String
}
}
任意のアイデアが理解されるであろう:)
FWIW、そこに*かもしれないの*(疑わしいが、可能)既存の[制約のウィジェット](http://grails.org/doc/2.0.x/ref/Constraints/こと:ここで
は、ドキュメントがありますwidget.html)を参照してください。しかし、私は可能なウィジェットのリストが何であるか分からない。私はうまくいけば答えを引き出すために[この質問に奨励金を加えました](http://stackoverflow.com/questions/7295811/what-widget-constraints-are-for-grails-domain-classes)。 –