renderEditor.template 파일에 매개 변수를 보내야합니다 ("grails install-templates"설치 후). 누구든지 나를 도울 수 있습니까? 감사. renderEditor.template
사용할GRAILS : renderEditor.template에 매개 변수 보내기
답변
바인딩 변수 DefaultGrailsTemplateGenerator
def binding = [pluginManager: pluginManager,
property: property,
domainClass: domainClass,
cp: cp,
domainInstance:getPropertyName(domainClass)]
domainClass
가 대응 ConstrainedProperty
되는 상기 발판 템플릿의 renderEditor(p)
통화에 전달 된 GrailsDomainClassProperty
및 cp
을 인 GrailsDomainClass
, property
되는 고정된다. 그 중 하나에서 필요한 것을 추출 할 수 있습니다. 같은 문제로 구글을 통해 여기있어 다른 사람들을 위해
좋아, 어떻게 렌더링을 렌더링하는 템플릿이 개체에 의해 알 수 있습니까? 나는 다른 방법으로 처리해야만하는 두 개의 다른 템플릿에서 두 가지 다른 상황을 가지고 있습니다. 죄송합니다 영어 –
@PhillipParente 나는 당신이 불행하게도 그렇게 생각하지 않습니다. DefaultGrailsTemplateGenerator'를 수정하여 임의의 매개 변수를 'renderEditor.template'에 전달할 수는 없지만 그러한 코드 변경 없이는 어떤 방법으로도이를 달성 할 수는 없습니다. –
가장 좋은 방법입니다. 감사 –
은 (내가 그랬던 것처럼)
이안 로버츠가 제안 유사한 방법으로 그렇게 관리했습니다,하지만 당신은 새로운 구현을 만들 필요가 없습니다 템플릿 생성기.
p = new HgfGrailsDomainClassProperty(p, prefix, domainClass)
if (display) { %>
<hgf:ifAllowedOnField action="show" field="${p.name}">
<hgf:ifReasonToShow reasonElement="${p.name}" bean="\${${propertyName}}">
<div class="fieldcontain \${hasErrors(bean: ${propertyName}, field: '${prefix}${p.name}', 'error')} ${required ? 'required' : ''} ${(cp?.metaConstraints?.hiddenField)?'hiddenProperty':''}">
<label for="${prefix}${p.name}">
<g:message code="${domainClass.propertyName}.${prefix}${p.name}.label" default="${p.naturalName}" />
<% if (required) { %><span class="required-indicator">*</span><% } %>
</label>
${renderEditor(p)}
...
구현 : 당신이 필요로 그냥 추가 데이터를 새 속성을 생성 않았다 _form.gsp의 내부 에 대한 프록시 구현을 만들 org.codehaus.groovy.grails.commons.GrailsDomainClassProperty
입니다 이 같은 것을 볼 수 있습니다
다음 renderEditor.template 내부package sk.hoppo.hgf;
import org.codehaus.groovy.grails.commons.GrailsDomainClass
import org.codehaus.groovy.grails.commons.GrailsDomainClassProperty
public class HgfGrailsDomainClassProperty implements GrailsDomainClassProperty {
private final String domainSuffix = "Instance";
private GrailsDomainClassProperty property;
String prefix;
String domainInstance;
public HgfGrailsDomainClassProperty(GrailsDomainClassProperty property, String prefix, GrailsDomainClass parentDomainClass) {
super();
this.property = property;
this.prefix = prefix;
domainInstance = getPropertyName(parentDomainClass);
}
private String getPropertyName(GrailsDomainClass domainClass) {
return "${domainClass.propertyName}${domainSuffix}";
}
@Override
public int getFetchMode() {
return property.getFetchMode();
}
@Override
public String getName() {
return property.getName();
}
...
을 그냥 송신 데이터에 액세스3210
sb << '<hgf:securedField'
sb << ' name="' << property.prefix << property.name << '"'
sb << ' field="' << property.prefix << property.name << '"'
BTW. 이걸로 내 사용자 정의 renderEditor로 작업 할 수 있도록 컴포지션 (임베드)을 만들었습니다.
- 1. Grails 정렬 매개 변수
- 2. Grails 매개 변수 전달
- 3. Grails 인덱스 매개 변수
- 4. before_save에 매개 변수 보내기
- 5. 아약스로 매개 변수 보내기
- 6. 양식 매개 변수 보내기
- 7. drop_receiving_element에서 매개 변수 보내기
- 8. URL에 매개 변수 보내기
- 9. 부분보기에 매개 변수 보내기
- 10. 파일에 매개 변수 보내기
- 11. 보내기 포스트 매개 변수
- 12. window.open 매개 변수 보내기
- 13. 매개 변수 보내기 (Linux)
- 14. Grails 재 스퍼 매개 변수
- 15. grails 매핑에 매개 변수 전달
- 16. Grails $ {appName} 매개 변수 대체
- 17. Grails - 리디렉션 매개 변수의 개체 목록 보내기
- 18. Grails - 매개 변수 목록에서 항목 별 매개 변수 찾기
- 19. HTTP POST에서 매개 변수 보내기
- 20. java에서 jsp로 매개 변수 보내기
- 21. 해시로 여러 매개 변수 보내기
- 22. Joomla 모듈에 매개 변수 보내기
- 23. 액센트가있는 매개 변수 보내기 C#
- 24. 웹 서비스에 매개 변수 보내기
- 25. JSF 보내기 및 매개 변수
- 26. PHP에서 XSLT로 매개 변수 보내기
- 27. 다른 사이트로 매개 변수 보내기
- 28. HTTPService에서 순서대로 매개 변수 보내기
- 29. 배열을 매개 변수 + twig로 보내기
- 30. 렌더링 할 매개 변수 보내기
약간의 작업을 설명 할 수 있습니까? renderEditor.template는 HTML 양식을 렌더링 할 때 양식 필드를 번역하여 해당 파일의 개인 메소드를 호출하기 위해 사용됩니다. 어떻게 또는 무엇을하려고하면 매개 변수를 전달해야 할 것입니다. 그냥 목표를 이해하려고 ... –
알지만, renderEditor (p, "myString")와 같이 _form.gsp "renderEditor (p)"에서 호출하여 매개 변수를 보내야합니다. 템플릿. 미안하다 영어 –