通常模版都是预定义的(搜索页、TAGS页、登录页)或者与具体数据相关(如栏目、文档、专题、广告)。如果需要一个自由的、不依赖具体数据的页面,就可以使用app模版。在开发手机APP应用时,也可以使用app模版。还可以通过ajax访问app模板,实现类似portal的功能。
Controller:com.jspxcms.core.web.fore.AppController.app()
。
访问地址:/app?template={template}
。template参数是必须的。例如http://localhost:8080/app?template=abc
。(7.0及更老版本地址需加上后缀.jspx
,如http://localhost:8080/app.jspx?template=abc
)
模版规则:app_{template}.html
。对应请求中的template参数,解析相应的模版。例如/template/1/default/app_abc.html
。
模版中可以使用ctx
、global
、site
等通用默认对象,可以通过标签获取需要的数据。
还可以在URL地址中传递参数(如/app?template={template}&infoId={infoId}
),例如/app?template=abc&infoId=12
。在模版中通过Param可以获取参数值(如${Param.infoId!}
),再配合标签就可以获取到特定的数据。如:
[@Info id=Param.infoId!;info]
<h1>${info.title}<h1>
<div>${info.text}</div>
[/@Info]
返回json数据,可以在模板里调用标签,构造json格式数据。如:
[
[@InfoList nodeId=Param.nodeId!;infos]
[#list infos as info]
{
"title":"${info.title?js_string}",
"url":"${info.url?js_string}"
}[#if info_has_next],[/#if]
[/#list]
[/@InfoList]
]