play framework学习笔记之 模板引擎
模板语法
${client.name}
${client?.name} 不能确定client是否存在的时候?
#{extends /}
#{doLayout /}
#{get}
#{set}
比如
#{extends 'simpledesign.html' /}
#{set title:'A decorated page' /}
Tags: #{tagName /}
#{script 'jquery.js' /}
#{list items:client.accounts, as:'account' } 循环
<li>${account}</li>
#{/list}
Actions: @{…} or @@{…}
<a href="@{Clients.showAccounts(client.id)}">All accounts</a>
注意此时Clients.showAccounts(client.id)没有加引号
而
<link rel="stylesheet" media="screen" href="@{'/public/stylesheets/main.css'}">
这些其它的public内的资源 需要 ' /public/stylesheets/main.css ' 内部加引号的,特别注意
@{…}相对路径
@@{…}绝对路径
Messages: &{…}
比如 conf/messages 文件里
clientName=The client name is %s
在模板页面里面使用&{…}
<h1>&{'clientName','myname' }</h1>
得到的结果是 <h1>The client name is myname</h1>
Comment: *{…}* 注释
*{**** Display the user name ****}*
%{…}% 类似过去的JSP页面一样在页面里嵌入逻辑
%{ fullName = client.name.toUpperCase()+' '+client.forname; }%
<h1>Client ${fullName}</h1>
To create a hello tag, just create the app/views/tags/hello.html file.
比如创建一个hello标签,只需要建立页面app/views/tags/hello.html
页面内容 Hello from tag!
No need to configure anything. You can use the tag directly:
不需要配置别的东西,你可以直接使用此标签
如: #{hello /}
给自定义标签加参数
比如你在 hello.html 里面 用到 ${_name} name前面加 _
那么
#{hello name:'Bob' /} 可以这样赋值
当然也有默认的唯一参数的时候 arg
Example:
Hello ${_arg}!
And you can call it easily using:
#{hello 'Bob' /}
调用标签体 Invoke tag body
Hello #{doBody /}!
#{hello}
Bob
#{/hello}
这样通过 #{doBody /} Bob 就作为标签体 传入了 自定义标签
默认的模板页面是在 views/tags 目录下,如果再在其下 建立 文件夹 比如 a
则就有了 命名空间 #{a.xxx /}
http://www.anool.net/?p=58
play framework学习笔记之 模板引擎的更多相关文章
- Python Flask学习笔记之模板
Python Flask学习笔记之模板 Jinja2模板引擎 默认情况下,Flask在程序文件夹中的templates子文件夹中寻找模板.Flask提供的render_template函数把Jinja ...
- Entity Framework 学习笔记(2)
上期回顾:Entity Framework 学习笔记(1) Entity Framework最主要的东西,就是自己创建的.继承于DbContext的类: /// <summary> /// ...
- Entity Framework学习笔记
原文地址:http://www.cnblogs.com/frankofgdc/p/3600090.html Entity Framework学习笔记——错误汇总 之前的小项目做完了,到了总结经验和 ...
- OpenCV 学习笔记(模板匹配)
OpenCV 学习笔记(模板匹配) 模板匹配是在一幅图像中寻找一个特定目标的方法之一.这种方法的原理非常简单,遍历图像中的每一个可能的位置,比较各处与模板是否"相似",当相似度足够 ...
- ADO.NET Entity Framework学习笔记(3)ObjectContext
ADO.NET Entity Framework学习笔记(3)ObjectContext对象[转] 说明 ObjectContext提供了管理数据的功能 Context操作数据 AddObject ...
- Apache OFBiz 学习笔记 之 服务引擎 二
加载服务定义文件 ofbiz-component.xml:所有的服务定义文件在每个组件的ofbi-component.xml文件中 加载服务定义 例:framework/common/ofbi ...
- Spring Framework 学习笔记——核心技术之Spring IOC
Spring Framework 官网文档学习笔记--核心技术之Spring IOC 官方文档 spring-framework-5.3.9 1. Spring Framework 核心技术 1.1 ...
- Angular 5.x 学习笔记(1) - 模板语法
Angular 5.x Template Syntax Learn Note Angular 5.x 模板语法学习笔记 标签(空格分隔): Angular Note on github.com 上手 ...
- Entity Framework学习笔记——错误汇总
之前的小项目做完了,到了总结经验和更新学习笔记的时间了.开始正题之前先啰嗦一下,对之前的学习目标进行一个调整:“根据代码生成表”与“生成数据库脚本和变更脚本”合并为“Code First模式日常使用篇 ...
随机推荐
- WinStore开发知识导航集锦
1.页面导航与页面传值:http://blog.csdn.net/tcjiaan/article/details/7895487
- Windows上使用clang编译
- 先自己从源代码 (http://llvm.org/releases/) 编译llvm和clang,或者直接安装clang for Windows - 测试过使用cygwin (https://cy ...
- mount分区为读写属性
对于只读文件系统, 如果想要挂载为可读写的, 需要重新mount下, 如将config分区mount为读写的分区: mount -o remount,rw /config
- 菜鸟学Windows Phone 8开发(1)——创建第一个应用程序
本系列文章来源MSDN的 面向完全新手的 Windows Phone 8 开发 主要是想通过翻译本系列文章来巩固下基础知识顺带学习下英语和练习下自己的毅力(因为打算每天翻译一篇,但是发现翻译这篇花费了 ...
- iOS-UISegmentedControl-隐藏边框
原理: 1. 用tintColor属性,把整个UISEgmentControl 设置成为透明色. 2. 设置正常状态下的titleTextAttributes.和选中状态下的titleTextAttr ...
- sqlserver查找表在哪个数据库脚本
EXEC sp_MSforeachdb @command1='IF object_id(''?'' + ''..table_name'') IS NOT NULL PRINT ''?'''
- SQL Server里ORDER BY的歧义性
在今天的文章里,我想谈下SQL Server里非常有争议和复杂的话题:ORDER BY子句的歧义性. 视图与ORDER BY 我们用一个非常简单的SELECT语句开始. -- A very simpl ...
- python内置模块(1)
Python的模块在其它语言中通常称为库或类库,也就是lib.它是编程语言的第三级封装,第四级则是包,也就是模块的打包组合,而前两级分别是函数和类.封装的好处,自然不用多言,高内聚,松耦合,减少代码重 ...
- CentOS6.5菜鸟之旅:关于搜索的shell命令
一.locate命令 用于模糊搜索文件(目录)的绝对路径. 示例1: // 凡是绝对路径当中含jdk字符串的文件(目录)均被搜索出来 fsjohnhuang@fsjohnhuang~# locate ...
- SQL Server 诊断查询-(3)
Query #27 Database Properties -- Recovery model, log reuse wait description, log file size, log u ...