내 모델의 일부인 Person
도메인 개체에 대한 편집 작업보기를 위해 Grails에서 생성 된 GSP 코드이며 ACEGI 보안 플러그 인의 인증을위한 기본 클래스이기도합니다. 나는 그것을 줄이기 위해 많은 재산을 잘라 냈다. 이 파일은 grails-app/views/person/edit.gsp
기본 Grails 질문 : 다음 Grails 코드는 personInstance를 어떻게 정의합니까?
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta name="layout" content="main" />
<g:set var="entityName" value="${message(code: 'person.label', default: 'Person')}" />
<title><g:message code="default.edit.label" args="[entityName]" /></title>
</head>
<body>
<div class="nav">
<span class="menuButton"><a class="home" href="${createLink(uri: '/')}">Home</a></span>
<span class="menuButton"><g:link class="list" action="list"><g:message code="default.list.label" args="[entityName]" /></g:link></span>
<span class="menuButton"><g:link class="create" action="create"><g:message code="default.new.label" args="[entityName]" /></g:link></span>
</div>
<div class="body">
<h1><g:message code="default.edit.label" args="[entityName]" /></h1>
<g:if test="${flash.message}">
<div class="message">${flash.message}</div>
</g:if>
<g:hasErrors bean="${personInstance}">
<div class="errors">
<g:renderErrors bean="${personInstance}" as="list" />
</div>
</g:hasErrors>
<g:form method="post" >
<g:hiddenField name="id" value="${personInstance?.id}" />
<g:hiddenField name="version" value="${personInstance?.version}" />
<div class="dialog">
<table>
<tbody>
<tr class="prop">
<td valign="top" class="name">
<label for="username"><g:message code="person.username.label" default="Username" /></label>
</td>
<td valign="top" class="value ${hasErrors(bean: personInstance, field: 'username', 'errors')}">
<g:textField name="username" value="${personInstance?.username}" />
</td>
</tr>
...SNIP...
a bunch of props
</tbody>
</table>
</div>
<div class="buttons">
<span class="button"><g:actionSubmit class="save" action="update" value="${message(code: 'default.button.update.label', default: 'Update')}" /></span>
<span class="button"><g:actionSubmit class="delete" action="delete" value="${message(code: 'default.button.delete.label', default: 'Delete')}" onclick="return confirm('${message(code: 'default.button.delete.confirm.message', default: 'Are you sure?')}');" /></span>
</div>
</g:form>
</div>
</body>
</html>
내 질문은, 어떻게 필드 personInstance
을 설정하고 인구가됩니까되고, 표준 위치에있는?
이것이 Grails의 작동 원리에 대한 기본적인 이해가 부족하다는 점을 이해하지만, 그럼에도 불구하고 나는 알아야 할 기본적인 질문이라고 생각합니다.
이것은 내 앱의 핵심 인 Person
개체 및 관련 데이터에 액세스하는 내 자신의 합성 페이지를 만들고자하는 욕망 때문입니다. 이 페이지와 함께 새 페이지를 만들 수 있기를 기대하면서 map.gsp
으로 전화하고 personInstance
에서 마법 같은 방법으로 보겠습니다. 나는 분명히 노력하고 있음에도 불구하고 그것을 어떻게 할 것인지를 생각할 수 없다. 나는 나의 이해의 중심에 바로 틈이 있다고 생각한다.
고마워, 그게 내가 필요한 작은 힌트 였어. 어떤 것들은 나를 위해 제자리에 빠졌습니다. security.groovy ...에 정의 된 기본 전달 URI를 사용하여 로그인 페이지에서 매개 변수 양식을 내 페이지로 전달하는 방법에 대한 두 번째 질문이 있지만 다른 질문을 할 것입니다. – Simon