1
私はかなりシンプルな操作をしようとしていますが、それは明らかに単純ではありません。私は、ドメインクラスを持っている:今、選択では、私のようなoptionValueとして正規表現の名前で、RegexRefインスタンスを一覧表示したいGrails selectはネストされたクラスの文字列を表示しません
class RegexRef {
int sequenceNumber
Product product
Regex regex
}
:
class Regex {
String name
String Regex
}
と別のクラス:
<g:select name="regexRef.id" from="${com.mycompany.RegexRef.list()}" optionKey="id" size="5" optionValue="regex.name" value="${actionRefInstance?.regexRef?.id}" />
しかし、これは機能しません。 ...私は、他の構造で、この誤方向を行うことができますcom.jetheaddev.RegexRef
<g:link controller="regexRef" action="show" id="${actionRefInstance?.regexRef?.id}">${actionRefInstance?.regexRef?.regex.name.encodeAsHTML()}</g:link>
、それが正常に動作します: 例外メッセージ:いいえ、そのようなプロパティ:クラスのregex.nameをそれはスロー。 <g:select/>
としてRegexRefのプロパティを取得しようとしているoptionValue="regex.name"
で
ありがとう、それは私が必要としたものです。それは私が推測している変数について、どこで選択リスト項目のプレースホルダー・オブジェクトですか? – Therealstubot
これがあなたが求めているものなのかどうかは確かではありませんが、[g:select](http://grails.org/doc/latest/ref/Tags/select.html)のドキュメントでは 'optionKey 'descriptionは、それがあなたの' .list() 'の個々のエンティティであるbean上のプロパティであることを言います。さらに下の例では、私が与えた 'optionValue'' Closure'の答えを示すものがあります。 – schmolly159