2

こんにちは、検証エラーの配列リストを解析し、それをダイアプライします。私は配列リストを持っています

[passwordinsufficientuniquechar, passwordmaxrepeat, passwordinsufficientuniqueno, passwordnotenoughnumbers]

そして、私はmessage.propertiesに対応するメッセージを持っています

passwordcontainsusername=Your new password cannot contain your user name.
passwordtooshort=Your new password must be at least 8 characters long.
passwordtoolong=Your new password cannot exceed 50 characters.
password.change.different=The new password and the confirmed password values do not match.
passwordmaxrepeat=Your new password cannot contain more than 4 instances of the same character.
passwordequalsoldpassword=Your new password cannot be a previously used password.
passwordnotenoughnumbers=Your new password must contain at least 1 number or punctuation character.
passwordnotallowedchar=Your new password contain one or more characters that are not allowed.
password.change.validateerror=The account password and the current password do not match.
passwordnotenoughchars=Your new password must contain at least 2 letters.
passwordlessthan24hours=You cannot change your password more than three times in 24 hours.
passwordinsufficientuniquechar = Your new password must contain at least 5 unique characters.
passwordinsufficientuniqueno =Your new password must contain at least 2 unique numbers (symbols count as numbers).

私はウェブフローを使用しています。では、これらのメッセージを o/p に解析して、プロパティ ファイルからメッセージを表示するにはどうすればよいでしょうか。

4

1 に答える 1

1

grails の慣例では、メッセージを に入れますgrails-app/i18n/messages.propertiesg:message次に、ビューで次のタグを使用できます。

<g:message code="passwordtooshort"/>

メッセージ コードの配列がある場合は、次のように実行できます。

<g:each in="${messageCodes}">
    <g:message code="${it}"/>
</g:each>

ビューは通常、これを行うのに最適な場所ですが、コントローラー内で変換を行う必要がある場合は、次のように行うことができます。

def translation = message(code: 'passwordtooshort')  // single code
def translations = messageCodes.collect { message(code: it) } // list of codes
于 2012-04-04T15:37:58.680 に答える