Вам нужно будет пройти режим в модели рендеринга:
render(template: "userid", model: [editable: true])
Тогда у вас есть несколько вариантов.
Вы можете выбрать тривиальный маршрут и использовать style='display: none'
в полях, когда редактируемый это правда. Это дает дополнительное преимущество, заключающееся в том, что вы можете легко переключаться между редактируемым и не на стороне клиента, если это имеет для вас значение.
Вы можете использовать поля <input type='hidden' ... />
, если вам нужны значения, чтобы перейти к любой отправке. , Обратите внимание, что они по-прежнему могут быть отредактированы пользователем, который знает, как использовать консоль разработчика, поэтому вам необходимо иметь средства защиты на стороне сервера и для предотвращения злонамеренного редактирования.
Вы могли бы просто не отображать поля вообще, когда вы не в редактируемом режиме, если они вам ни для чего не нужны.
Дополнительная информация:
Измените условия if с:
<g:if test="${[userEdit:true]}"><dt input type="hidden"</dt></g:if>
до:
<g:if test="${userEditable}"><dt input type="hidden"</dt></g:if>