я поместил значение в текст ввода типа, но с нулевым значением в params.descrption.Why? - PullRequest
0 голосов
/ 04 декабря 2010

это код gsp:

td align="left" class="pinkbox" style="height: 35px" width="43%">
${fieldValue(bean: bookInstance, field: "description")}<br />
input type="text" id="description" name="description" value="${fieldValue(bean: bookInstance, field: "description")}" size="30px"  />
g:link controller="conference" action="edit" id="${bookInstance.id}">Update </g:link></td>

заводной код в контроллере:

def edit ={
  println params.description
  def bookInstance = Book.get(params.id)
  try{
    bookInstance.description = params.description
    bookInstance.save()

    redirect(action:'show',id:bookInstance.id)
  }catch(Exception e){
    flow.message ="an error occurred during update"
    redirect(action:'show',id:bookInstance.id)
  }
}

возвращает нулевое значение, пока я вставляю значение в элемент управления textboxя пытаюсь пропустить атрибут значения из текста типа ввода, но без какого-либо эффекта

Ответы [ 2 ]

3 голосов
/ 04 декабря 2010

Я думаю, что ваша проблема в том, что вы используете ссылку для вызова действия контроллера, и вы не отправляете никаких данных params.Попробуйте добавить атрибут params к вашей ссылке g: как подробно описано в документации g: link:

http://www.grails.org/Tag+-+link

Обратите внимание, что вам нужно будет заполнить параметры из значений ввведите с помощью javascript, если вы действительно хотите использовать такую ​​ссылку.

В качестве альтернативы, и, возможно, более правильно, используется форма.Вы должны попробовать что-то вроде

<g:form controller='thecontroller' method='edit'>    
  <g:textarea name="" value="" type="text"></g:textarea>
   ... more fields here including  a submit ...
</g:form>

Если вы действительно хотите, чтобы «кнопка» была ссылкой, вы можете использовать javascript, чтобы она отправила форму.Тем не менее, использование формы по назначению, вероятно, лучше всего.Grails это все о конвенциях ...

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

input type = "hidden" name = "Id" value = "$ {bookInstance.id}">

td align = "left" class = "pinkbox" style = "height: 35px" width = "43%">

$ {fieldValue (bean: bookInstance, поле: "description")}

g: textField type = "text" name = "description" value = "$ {fieldValue (bean: bookInstance, field:" description ")}" size = "30px" />

g: actionSubmit action = 'edit' value = "Update">

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