Леса Грааля скрывают / скрывают большое количество - PullRequest
0 голосов
/ 23 сентября 2019

Я мигрирую проект с Grails 3.3.2 на 4.0.0 и столкнулся с проблемой со страницами скаффолдинга, которые теперь скрывают / пропускают большие числовые значения.

Версия плагина скаффолдинга - 4.0.0.RC1.

Мой класс домена имеет свойства, определенные как Integer или Long, и на странице Показать большие значения отображаются с разделителями тысяч.Однако на странице редактирования значение в поле ввода отображается пустым, хотя HTML-код выглядит правильно.

<div class="fieldcontain required">
  <label for="submissionId">Submission Id
   <span class="required-indicator">*</span>
  </label>
  <input type="number" name="submissionId" value="123,123" required="" 
     id="submissionId">
</div>

На странице «Показать» просто используется тег f: display:

<f:display bean="member" />

тогда как страница редактирования использует тег f: all:

<g:form resource="${this.member}" method="PUT">
  <g:hiddenField name="version" value="${this.member?.version}" />
  <fieldset class="form">
    <f:all bean="member" 
...

Очевидно, что если пользователь теперь нажимает кнопку «Обновить» (скажем, он пришел, чтобы отредактировать эту запись по другой причине и не обнаруживает)пустое значение в этом числовом поле), затем пустое значение сохраняется в таблице базы данных в числовом поле.

С Grails 3.3.2 - который использует скаффолдинг 3.4.1 - значение ввода является правильнымотображается как «123123».

Не уверен, что проблема будет в этом плагине или плагине полей - где разница версий составляет 2.2.3 против 3.0.0.RC1.

Любой другойсталкивался с этим?Я пропускаю другой зависимый плагин, который, возможно, не был обновлен?

В качестве альтернативы, я был бы рад изменить формат чисел по умолчанию, чтобы удалить разделитель тысяч, если это возможно с плагинами scaffolding / fields.

1 Ответ

0 голосов
/ 24 сентября 2019

В application.yml вы можете отключить локализацию номеров полей плагина.Тогда у вас есть числа вроде 123123 без разделителя тысяч.

grails:
    plugin:
        fields:
            localizeNumbers: false
...