Я должен написать или изменить форму данных пользователя в Grails. Это моя форма:Обновить или изменить форму данных пользователя в Grails
<g:form class="form-signin" controller="VisitorSpace">
<label for="login" class="sr-only">Login</label>
<g:textField id="login" class="form-control" name="login" placeholder="login" required="" autofocus=""/>
<label for="firstName" class="sr-only">Your name</label>
<g:textField id="firstName" class="form-control" name="firstName" placeholder="Your name" required="" type="text"/>
<label for="lastName" class="sr-only">Your lastname</label>
<g:textField id="lastName" class="form-control" name="lastName" placeholder="Your lastname" required="" type="text"/>
<label for="inputEmail" class="sr-only">e-mail</label>
<g:textField id="inputEmail" class="form-control" name="email" placeholder="e-mail" required="" autofocus="" data-translatable-string="Email address" type="email"/>
<label for="inputPassword" class="sr-only">Password</label>
<g:passwordField id="inputPassword" class="form-control" name="password" placeholder="Password" required="" data-translatable-string="Password"/>
<label for="confirmPassword" class="sr-only">Confirm password</label>
<g:passwordField id="confirmPassword" class="form-control" name="controlPassword" placeholder="Confirm password" required="" data-translatable-string="Password"/>
<g:actionSubmit value="Commit change" action="updateUserData" class="btn btn-lg btn-primary btn-block">Commit change</g:actionSubmit>
</g:form>
Старые данные должны быть указаны в полях, поэтому он должен быть отправлен из базы данных в тот момент, когда вид-форма будет загружена. Я знаю, что можно вызвать для этого требуемый метод-контроллер, и такой метод должен быть вызван до или во время загрузки формы представления. Но как это сделать?
Может быть .. Но теперь я хотел вызвать действие от контроллера, чтобы вставить его результат в значение. Например: value = "$ {showEditableData()}". showEditableData() - это метод от контроллера. Это действие содержит имя пользователя String user = getPrincipal(). Но когда я это делаю, я получаю сообщение об ошибке: такой метод подписи не найден – pragmus
На мой взгляд, есть альтернатива: просмотр рендеринга с параметрами. Параметры могут заменить вызов метода. Я попробую. – pragmus