如何从模型java类访问Magnolia v5.7组件属性 我已经在组件对话框中定义了属性
如何从模型java类访问Magnolia v5.7组件属性 我已经在组件对话框中定义了属性,magnolia,Magnolia,如何从模型类中的execute()方法访问此值 模型类将在此url请求服务 文档只讨论如何访问模型类中的数据,我需要将url传递到模型类中 我无法通过ajax从页面发送请求,因为服务域未对外联网公开。在ftl中,您可以使用参数调用模型: ${model.myMethod(content.unsubscribe_url)} 在您的模型中,您可以使用参数来执行您需要的操作 public class myMethod(String url) { do something .... }
- 如何从模型类中的execute()方法访问此值
- 模型类将在此url请求服务
我无法通过ajax从页面发送请求,因为服务域未对外联网公开。在ftl中,您可以使用参数调用模型:
${model.myMethod(content.unsubscribe_url)}
在您的模型中,您可以使用参数来执行您需要的操作
public class myMethod(String url) {
do something ....
}
您的模型类从
RenderingModelImpl
扩展而来。或者至少应该:)。因此,有一个构造函数在中传递当前组件节点,并通过
getNode()
方法将其公开给您。因此,假设当您在对话框中单击
Save changes
时,该值会保留在unsubscribeUrl
属性下,以便从execute()
方法访问该值:
public String execute() {
// read unsubscribe url
String unsubscribeUrl = this.getNode().getProperty("unsubscribeUrl").getString();
}
我的退订页面没有FTL。它完全由作者控制台页面应用程序组成。我将考虑从头开始做这个页面,如果没有出现任何建议,如何转换或导出已经设计的页面到FTL模板?在模型类构造函数中,我接收内容参数<代码>公共un订阅模型(节点内容,RD定义,渲染模型父){Sub(内容,定义,父);}我可以通过这个
内容节点访问取消订阅URL
的值吗?我用FTL和模型类创建组件;定义属性unsubscribeUrl;在模型中添加setUnsubscribe(url);放入FTL${model.setUnsubscribeUrl(content.unsubscribeUrl)}
;未调用此方法。完全由作者控制台页面应用程序组成是什么意思?如果创建页面时选择模板,则此模板将作为ftl文件存在,其中包括页眉、页脚和用于呈现组件的代码。例如,没有模板的页面是返回json的不可见页面。但是所有普通页面都应该有一个ftl文件。