как изменить ограничения ошибок сообщений в Grails - PullRequest
0 голосов
/ 02 июня 2010

У меня есть домен с ограничениями, такими как минимальное значение должно быть больше 0

Я понятия не имею, как изменить сообщение, если ограничения не пройдены.

какой файл мне нужно отредактировать для этого?

Мне также нужно отобразить значения некоторых свойств, например,

"Вы не можете совершать транзакции потому что ваш баланс меньше 100. Ваш текущий баланс $ {currentBalance} после вычета. Ваш предыдущий баланс равен $ {previousBalance} и сумма, которая должна быть вычтена $ {DeductedValue} "

обратите внимание, мой класс:

class Transaction
BigDecimal previousBalance
BigDecimal currentBalance
BigDecimal deductedValue ; 

constraints currentBalance(min:100)

beforeUpdate => currentBalance = previousBalance - deductedValue 

Ответы [ 4 ]

1 голос
/ 03 июня 2010

Документы дают вам понимание правильного подхода Grails к сообщениям об ошибках валидации.

http://grails.org/doc/1.3.1/guide/7.%20Validation.html#7.4%20Validation%20and%20Internationalization

Кроме того, посмотрите эту бесплатную электронную книгу, хорошее введение в основы Grails

http://www.infoq.com/minibooks/grails-getting-started

Конкретно p28

0 голосов
/ 29 декабря 2010

Если вы просто хотите проверить, что значение больше определенного числа, поместите ограничение в класс домена (myClass), например:

static constraints = { myNumber(min:0) }

В файлах messages.properties добавьте строку:

myClass.myNumber.min.notmet = There is a problem: The number must be greater than {3}.
0 голосов
/ 02 июня 2010

Под grails-app/i18n используйте messages.properties для добавления вашей строки (или любой другой локали, с которой вы работаете).

Если класс вашего домена называется user, а поле, которое у вас есть, называется balance:

class User{
   static constraints = {
      balance(min:100)
    }
   BigDecimal balance;
}

тогда вы добавите:

user.balance.min.error.User.balance= you cannot make any transaction because your balance is less than [{3}].Your current balance is [{2}]
0 голосов
/ 02 июня 2010

Отредактируйте файл messages.properties в папке grails-app / i18n, указав сообщения, соответствующие нарушенному ограничению. Плагин, который может помочь вам генерировать сообщения в соответствии с вашими ограничениями, см. this.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...