`
JasonChi
  • 浏览: 95771 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

play templage

    博客分类:
  • play
阅读更多
1,
${…} -->类似el表达式,可以输出对象的属性,例如

         Client ${client.name}


2,
#{tagName /}  标签,例如有  #{script 'jquery.js' /} ,它像Html标签一样,要有结束符,#{script 'jquery.js'}#{/script}
以下是它的例子,意思是通过 list标签遍历一个集合

<h1>Client ${client.name}</h1>
<ul>
    #{list items:client.accounts, as:'account' }
        <li>${account}</li>
    #{/list}
</ul>
#{list items}是固定写法,改成Java应该是这样表达
for(Accounts account : client.accounts)


3,
@{…} or @@{…}  通过这个标记,可以将Play的方法转换成 action的地址
@{....}显示出相对地址
@@{....}显示绝对地址
使用方法例如:

<h1>Client ${client.name}</h1>
<p>
   <a href="@{Clients.showAccounts(client.id)}">All accounts</a>
</p>
<hr />
<a href="@{Clients.index()}">Back</a>


4,
Messages : &{…}
国际化标记:
通过在 conf/messages 配置国际信息.
例如:
messages: clientName=The client name is %s

template:<h1>&{'clientName', client.name}</h1>


5,
注释:  *{…}*


6,
%{  }%  标签,和jsp的<%%>标签类似
但是在其中写的语法不是java,好像是Groovy.


1,[size=small;]模板继承
[/size]


使用 
Html代码
#{extends 'xxx.html'} 

#{extends 'xxx.html'}

xxx.html中这样写:
Html代码
<h1>Main template</h1> 
   
<div id="content"> 
    #{doLayout /}  
</div> 

<h1>Main template</h1>

<div id="content">
    #{doLayout /}
</div>


在被继承的文件中,写的内容,将会把继承的xxx.html中的
Html代码
#{doLayout /} 

#{doLayout /}
替换成被继承文件中写的内容.

2,Create tags(创建模板的公共包含块)
在app/views/tags/文件夹下创建了hello.html,
那么在你定义的模板中可以这么引用它
Html代码
#{hello /} 

#{hello /}

给公共包含块中创地参数:
包含块引用的参数前必须以 '_'下划线开头,例如:
Html代码
Hello ${_name} ! 

Hello ${_name} !
在引用包含块的模板文件中,这么传参数:
Html代码
#{hello name:'Bob' /} 

#{hello name:'Bob' /}
如果其中传递多个参数,可以这么传
Html代码
#{hello name:'Bob' password:'asdfasdf' email:'aa@aa.cc' /}  
 
即:  
#{hello 参数名:参数对象 ...... ........}可以传很多很多个参数.  
其中参数对象可以是个集合或者对象 

#{hello name:'Bob' password:'asdfasdf' email:'aa@aa.cc' /}

即:
#{hello 参数名:参数对象 ...... ........}可以传很多很多个参数.
其中参数对象可以是个集合或者对象


如果只传递一个参数:
Play默认提供一个参数名叫做Hello ${_arg}!
你就这么传参数#{hello 'Bob' /},只要传值,不用给参数名即可.

你可以在保护块中使用  Html代码
#{doBody /} 

#{doBody /}标记
那么,你在引用包含块的模板中可以
Html代码
#{hello}  
   Bob  
#{/hello} 

#{hello}
   Bob
#{/hello}

这么写,用Bob替换
Html代码
#{doBody /} 

#{doBody /}
的内容。

2,定义自己的模板方法
Html代码
<ul> 
#{list items:products, as:'product'}  
    <li>${product.name}. Price : ${product.price.format('## ###,00')} €</li> 
#{/list}  
</ul> 

<ul>
#{list items:products, as:'product'}
    <li>${product.name}. Price : ${product.price.format('## ###,00')} €</li>
#{/list}
</ul>

这里的format方法是Play自带的,我们可以通过继承play.templates.JavaExtensions自定义Play模板的方法.
Java代码
import play.templates.JavaExtensions;  
   
public class CurrencyExtensions extends JavaExtensions {  
   
  public static String ccyAmount(Number number, String currencySymbol) {  
     String format = "'"+currencySymbol + "'#####.##";  
     return new DecimalFormat(format).format(number);  
  }  


import play.templates.JavaExtensions;

public class CurrencyExtensions extends JavaExtensions {

  public static String ccyAmount(Number number, String currencySymbol) {
     String format = "'"+currencySymbol + "'#####.##";
     return new DecimalFormat(format).format(number);
  }
}

我们可以这么引用:
Html代码
<em>Price: ${123456.324234.ccyAmount()}</em> 

<em>Price: ${123456.324234.ccyAmount()}</em>


你可以通过这么给View传递参数,
在Play的Controller中写
Java代码
renderArgs.put("user", user ); 

renderArgs.put("user", user );
给页面传递对象,这么使用的像:request.setAttribute("",xxx);
分享到:
评论

相关推荐

    AngularJS数据建模

    我们知道,AngularJS并没有自带立等可用的数据建模方案。而是以相当抽象的方式,让我们在controller中使用JSON数据作为模型。...这个控制器创建了一个书本的模型,我们可以在后面的模板中(templage)中使用它。 假如我

    Proteus20个应用技巧

    8. 隐藏元件的内容:可以选择"Templage"----&gt; "Set Design Defaults",然后在弹出的"Edit Design Defaults"窗口中,将"Show hidden text?"右边的选择框里的钩去掉,可以隐藏元件的内容。 9. 仿真过程中的颜色变化:...

    qt5-qtmultimedia-5.9.7-1.el7.x64-86.rpm.tar.gz

    1、文件内容:qt5-qtmultimedia-5.9.7-1.el7.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/qt5-qtmultimedia-5.9.7-1.el7.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、安装指导:私信博主,全程指导安装

    Java毕业设计-ssm-jsp-简易版营业厅宽带系统(源码+sql脚本+32页零基础部署图文详解+29页论文+环境工具+教程+视频+模板).zip

    资源说明: 1:csdn平台资源详情页的文档预览若发现'异常',属平台多文档切片混合解析和叠加展示风格,请放心使用。 2:32页图文详解文档(从零开始项目全套环境工具安装搭建调试运行部署,保姆级图文详解),旨在为更多的人甚至零基础的人也能运行、使用和学习。 3:配套毕业论文,万字长文,word文档,支持二次编辑。 4:范例参考答辩ppt,pptx格式,支持二次编辑。 5:工具环境、ppt参考模板、相关电子教程、视频教学资源分享。 6:资源项目源码均已通过严格测试验证,保证能够正常运行,本项目仅用作交流学习参考,请切勿用于商业用途。 7:项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通。 内容概要: 本系统基于B/S网络结构,在IDEA中开发。服务端用Java并借ssm框架(Spring+SpringMVC+MyBatis)搭建后台。用MySQL存储数据,可靠性强。 能学到什么: 使用ssm搭建后台。学习使用jsp、html构建交互界面、前后端数据交互、MySQL管理数据、从零开始环境搭建、调试、运行、打包、部署流程。

    Java毕业设计-ssm-vue-校医务系统(源码+sql脚本+32页零基础部署图文详解+环境工具+教程+视频+模板).zip

    资源说明: 1:csdn平台资源详情页的文档预览若发现'异常',属平台多文档切片混合解析和叠加展示风格,请放心使用。 2:32页图文详解文档(从零开始项目全套环境工具安装搭建调试运行部署,保姆级图文详解),旨在为更多的人甚至零基础的人也能运行、使用和学习。 3:范例参考毕业论文,万字长文,word文档,支持二次编辑。 4:范例参考答辩ppt,pptx格式,支持二次编辑。 5:工具环境、ppt参考模板、相关电子教程、视频教学资源分享。 6:资源项目源码均已通过严格测试验证,保证能够正常运行,本项目仅用作交流学习参考,请切勿用于商业用途。 7:项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通。 内容概要: 本系统基于B/S网络结构,在IDEA中开发。服务端用Java并借ssm框架(Spring+SpringMVC+MyBatis)搭建后台。用MySQL存储数据,可靠性强。 能学到什么: 使用ssm搭建后台。VUE框架构建前端交互界面、前后端数据交互、MySQL管理数据、从零开始环境搭建、调试、运行、打包、部署流程。

    Self-supervised Equivariant Attention Mechanismfor Weakly Supervised Semantic Segmentation.zip

    Self-supervised Equivariant Attention Mechanismfor Weakly Supervised Semantic Segmentation,含有完整的代码和论文

    基于python深度学习识别猫的声音-含数据集和训练识别代码.zip

    本资源包含数据集有猫的三种声音-高音声、哈气声和喵呜声。 通过python、pytorch环境运行。 环境的安装可参考: https://blog.csdn.net/no_work/article/details/145416261 代码整体是非常简便的,总共三个py部分和一个数据集在data文件夹下。 运行python 01数据集文本生成制作.py 会在logs文件夹下生成2个txt文本,分别存放了wav音频的路径和对应的标签。 运行python 02train.py就会训练这个txt文本里面的数据,并将训练的模型与验证集里面的数据进行验证。 最后模型也是保存在logs文件夹下。 最后运行python 03pyqt.py即可加载训练好的模型,对输入的音频进行识别。

    Java毕业设计-ssm-jsp-旅行社管理系统(源码+sql脚本+32页零基础部署图文详解+30页论文+环境工具+教程+视频+模板).zip

    资源说明: 1:csdn平台资源详情页的文档预览若发现'异常',属平台多文档切片混合解析和叠加展示风格,请放心使用。 2:32页图文详解文档(从零开始项目全套环境工具安装搭建调试运行部署,保姆级图文详解),旨在为更多的人甚至零基础的人也能运行、使用和学习。 3:配套毕业论文,万字长文,word文档,支持二次编辑。 4:范例参考答辩ppt,pptx格式,支持二次编辑。 5:工具环境、ppt参考模板、相关电子教程、视频教学资源分享。 6:资源项目源码均已通过严格测试验证,保证能够正常运行,本项目仅用作交流学习参考,请切勿用于商业用途。 7:项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通。 内容概要: 本系统基于B/S网络结构,在IDEA中开发。服务端用Java并借ssm框架(Spring+SpringMVC+MyBatis)搭建后台。用MySQL存储数据,可靠性强。 能学到什么: 使用ssm搭建后台。学习使用jsp、html构建交互界面、前后端数据交互、MySQL管理数据、从零开始环境搭建、调试、运行、打包、部署流程。

    Java毕业设计-ssm-jsp-医院在线挂号预约系统(源码+sql脚本+32页零基础部署图文详解+39页论文+环境工具+教程+视频+模板).zip

    资源说明: 1:csdn平台资源详情页的文档预览若发现'异常',属平台多文档切片混合解析和叠加展示风格,请放心使用。 2:32页图文详解文档(从零开始项目全套环境工具安装搭建调试运行部署,保姆级图文详解),旨在为更多的人甚至零基础的人也能运行、使用和学习。 3:配套毕业论文,万字长文,word文档,支持二次编辑。 4:范例参考答辩ppt,pptx格式,支持二次编辑。 5:工具环境、ppt参考模板、相关电子教程、视频教学资源分享。 6:资源项目源码均已通过严格测试验证,保证能够正常运行,本项目仅用作交流学习参考,请切勿用于商业用途。 7:项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通。 内容概要: 本系统基于B/S网络结构,在IDEA中开发。服务端用Java并借ssm框架(Spring+SpringMVC+MyBatis)搭建后台。用MySQL存储数据,可靠性强。 能学到什么: 使用ssm搭建后台。学习使用jsp、html构建交互界面、前后端数据交互、MySQL管理数据、从零开始环境搭建、调试、运行、打包、部署流程。

    Global Context Networks.zip

    Global Context Networks,含有完整的代码和论文

    rhn-setup-gnome-2.0.2-24.el7.x64-86.rpm.tar.gz

    1、文件内容:rhn-setup-gnome-2.0.2-24.el7.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/rhn-setup-gnome-2.0.2-24.el7.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、安装指导:私信博主,全程指导安装

    基于FAST与MATLAB Simulink联合仿真的风机变桨控制研究:独立与统一变桨在非线性风力发电机中的对比与应用分析,风机变桨控制基于FAST与MATLAB SIMULINK联合仿真模型非线性风

    基于FAST与MATLAB Simulink联合仿真的风机变桨控制研究:独立与统一变桨在非线性风力发电机中的对比与应用分析,风机变桨控制基于FAST与MATLAB SIMULINK联合仿真模型非线性风力发电机的 PID独立变桨和统一变桨控制下仿真模型,对于5WM非线性风机风机进行控制 链接simulink的scope出转速对比,桨距角对比,叶片挥舞力矩,轮毂处偏航力矩,俯仰力矩等载荷数据对比图,在trubsim生成的3D湍流风环境下模拟 统一变桨反馈信号是转速,独立变桨反馈是叶根载荷 包含openfast与matlab simulink联合仿真的建模 NREL免费提供的5MW风机参数建模 可以提供参考文献 ,FAST模型; MATLAB SIMULINK联合仿真; 风机变桨控制; 非线性风力发电机; PID独立变桨控制; 统一变桨控制; 5WM风机; 仿真模型; 桨距角对比; 转速对比; 3D湍流风环境模拟; OpenFAST与MATLAB联合仿真建模; NREL 5MW风机参数建模。,基于OpenFAST与MATLAB/Simulink联合仿真模型的5MW风机变桨控制研究

    Java毕业设计-ssm-vue-农家乐信息平台(源码+sql脚本+32页零基础部署图文详解+38页论文+19页答辩+环境工具+教程+视频+模板).zip

    资源说明: 1:csdn平台资源详情页的文档预览若发现'异常',属平台多文档切片混合解析和叠加展示风格,请放心使用。 2:32页图文详解文档(从零开始项目全套环境工具安装搭建调试运行部署,保姆级图文详解),旨在为更多的人甚至零基础的人也能运行、使用和学习。 3:配套毕业论文,万字长文,word文档,支持二次编辑。 4:配套答辩ppt,pptx格式,支持二次编辑。 5:工具环境、ppt参考模板、相关电子教程、视频教学资源分享。 6:资源项目源码均已通过严格测试验证,保证能够正常运行,本项目仅用作交流学习参考,请切勿用于商业用途。 7:项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通。 内容概要: 本系统基于B/S网络结构,在IDEA中开发。服务端用Java并借ssm框架(Spring+SpringMVC+MyBatis)搭建后台。用MySQL存储数据,可靠性强。 能学到什么: 使用ssm搭建后台。VUE框架构建前端交互界面、前后端数据交互、MySQL管理数据、从零开始环境搭建、调试、运行、打包、部署流程。

    qt5-qtimageformats-doc-5.9.7-2.el7-9.x64-86.rpm.tar.gz

    1、文件内容:qt5-qtimageformats-doc-5.9.7-2.el7_9.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/qt5-qtimageformats-doc-5.9.7-2.el7_9.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、安装指导:私信博主,全程指导安装

    基于Matlab Simulink的有源电力滤波器(APF)模型治理不控整流与三相不平衡电能质量问题仿真演示,有源电力滤波器(APF)模型 Matlab simulink 质量过硬 可用于治理不控

    基于Matlab Simulink的有源电力滤波器(APF)模型治理不控整流与三相不平衡电能质量问题仿真演示,有源电力滤波器(APF)模型 Matlab simulink 质量过硬 可用于治理不控整流和不平衡负载带来的电能质量问题:仿真总时长0.3s,0.1s时接入APF, 0.1-0.2s治理不控整流带来的谐波电流,0.2-0.3治理三相不平衡带来的不平衡电流。 ,核心关键词:有源电力滤波器(APF)模型; Matlab simulink; 质量过硬; 治理电能质量问题; 仿真; 不控整流; 不平衡负载; 谐波电流; 三相不平衡电流。,有源电力滤波器模型仿真:治理不控整流与三相不平衡的电能质量优化

    qt5-qtserialport-doc-5.9.7-1.el7.x64-86.rpm.tar.gz

    1、文件内容:qt5-qtserialport-doc-5.9.7-1.el7.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/qt5-qtserialport-doc-5.9.7-1.el7.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、安装指导:私信博主,全程指导安装

    Java毕业设计-ssm-jsp-防疫信息登记系统(源码+sql脚本+32页零基础部署图文详解+30页论文+16页答辩+环境工具+教程+视频+模板).zip

    资源说明: 1:csdn平台资源详情页的文档预览若发现'异常',属平台多文档切片混合解析和叠加展示风格,请放心使用。 2:32页图文详解文档(从零开始项目全套环境工具安装搭建调试运行部署,保姆级图文详解),旨在为更多的人甚至零基础的人也能运行、使用和学习。 3:配套毕业论文,万字长文,word文档,支持二次编辑。 4:配套答辩ppt,pptx格式,支持二次编辑。 5:工具环境、ppt参考模板、相关电子教程、视频教学资源分享。 6:资源项目源码均已通过严格测试验证,保证能够正常运行,本项目仅用作交流学习参考,请切勿用于商业用途。 7:项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通。 内容概要: 本系统基于B/S网络结构,在IDEA中开发。服务端用Java并借ssm框架(Spring+SpringMVC+MyBatis)搭建后台。用MySQL存储数据,可靠性强。 能学到什么: 使用ssm搭建后台。学习使用jsp、html构建交互界面、前后端数据交互、MySQL管理数据、从零开始环境搭建、调试、运行、打包、部署流程。

    matlab采集雷达数据可视化

    通过 MATLAB 读取 N10 激光雷达 的数据,并进行 实时 3D 点云可视化。数据通过 串口 传输,并经过解析后转换为 三维坐标点,最终使用 pcplayer 进行动态渲染。

    基于雨流计数法的源荷储双层协同优化配置:储能系统寿命评估与充放电策略研究,基于雨流计数法的源-荷-储双层协同优化配置 关键词:双层规划 雨流计算法 储能优化配置 参考文档:储能系统容量优化配置及全

    基于雨流计数法的源荷储双层协同优化配置:储能系统寿命评估与充放电策略研究,基于雨流计数法的源-荷-储双层协同优化配置 关键词:双层规划 雨流计算法 储能优化配置 参考文档:《储能系统容量优化配置及全寿命周期经济性评估方法研究》第三章 仿真平台:MATLAB CPLEX 主要内容:代码主要做的是一个源荷储优化配置的问题,采用双层优化,外层优化目标的求解依赖于内层优化的储能系统充放电曲线,基于储能系统充放电曲线,采用雨流计数法电池健康状态数学模型,对决策变量储能功率和容量的储能系统寿命年限进行评估;内层储能系统充放电曲线的优化受外层储能功率和容量决策变量的影响,不同的功率和容量下,储能装置的优化充放电功率曲线存在差异。 代码非常精品,注释保姆级,靠谱值得信赖。 ,双层规划;雨流计数法;储能优化配置;充放电曲线;电池健康状态。,基于雨流计数法的双层协同储能优化配置研究

    Java毕业设计-ssm-jsp-金鱼销售平台(源码+sql脚本+32页零基础部署图文详解+34页论文+环境工具+教程+视频+模板).zip

    资源说明: 1:csdn平台资源详情页的文档预览若发现'异常',属平台多文档切片混合解析和叠加展示风格,请放心使用。 2:32页图文详解文档(从零开始项目全套环境工具安装搭建调试运行部署,保姆级图文详解),旨在为更多的人甚至零基础的人也能运行、使用和学习。 3:配套毕业论文,万字长文,word文档,支持二次编辑。 4:范例参考答辩ppt,pptx格式,支持二次编辑。 5:工具环境、ppt参考模板、相关电子教程、视频教学资源分享。 6:资源项目源码均已通过严格测试验证,保证能够正常运行,本项目仅用作交流学习参考,请切勿用于商业用途。 7:项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通。 内容概要: 本系统基于B/S网络结构,在IDEA中开发。服务端用Java并借ssm框架(Spring+SpringMVC+MyBatis)搭建后台。用MySQL存储数据,可靠性强。 能学到什么: 使用ssm搭建后台。学习使用jsp、html构建交互界面、前后端数据交互、MySQL管理数据、从零开始环境搭建、调试、运行、打包、部署流程。

Global site tag (gtag.js) - Google Analytics