freemaker学习笔记--其它内置方法

一:数字型
<#assign answer=42/>
${answer}
${answer string}  <#-- the same as ${answer} -->
${answer string.number}
${answer string.currency}
${answer string.percent}

<#setting number_format="0.###E0"/>

${12345 string("0.####E0")} 


${answer string("number")} 等同于:${answer string.number}.

二:日期型:
预定义格式包括:short ,middle和long。

 

${openingTime string.short}
${openingTime string.medium}
${openingTime string.long}

组合使用:${lastUpdated string.short_long}
${lastUpdated string("yyyy-MM-dd HH:mm:ss zzzz")}

三:逻辑型
foo string
foo string("yes", "no")

四:序列的内置方法:
first

last

seq_contains
${x seq_contains("blue") string("yes", "no")}

seq_index_of

seq_last_index_of

reverse

size

sort

sort_by
多层次的hash排序

<#assign members = [
    {"name": {"first": "Joe", "last": "Smith"}, "age": 40},
    {"name": {"first": "Fred", "last": "Crooger"}, "age": 35},
    {"name": {"first": "Amanda", "last": "Fox"}, "age": 25}]>
Sorted by name.last:
<#list members sort_by(['name', 'last']) as m>
- ${m.name.last}, ${m.name.first}: ${m.age} years old
</#list>

chunk:将一个序列分解成几个序列。

<#assign seq = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']>

<#list seq chunk(4) as row>
  <#list row as cell>${cell} </#list>
</#list>

<#list seq chunk(4, '-') as row>
  <#list row as cell>${cell} </#list>
</#list>
chunk经常用于分栏或者表格输出的格式。

五:hash内置方法:

keys:
values:

六:很少使用或者专家级的内置方法:
byte,double,float,int,long,short。

eval

has_content:变量存在,不是指null也不是空串,一般情况下可以使用expr! size > 0 or expr! length > 0 代替expr has_content。

interpret将一个字符串解析为ftl模版,产生一个TemplateTransformModel对象。
<#assign x=["a", "b", "c"]>
<#assign templateSource = "<#list x as y>${y}</#list>">
<#assign inlineTemplate = templateSource interpret>
<@inlineTemplate>def/@inlineTemplate

is_...检查变量类型:
Built-in
 Returns true if the value is a ...
 
is_string
 string
 
is_number
 number
 
is_boolean
 boolean
 
is_date
 date (all types: date-only, time-only and date-time)
 
is_method
 method
 
is_transform
 transform
 
is_macro
 macro
 
is_hash
 hash
 
is_hash_ex
 extended hash (i.e. supports  keys and  values)
 
is_sequence
 sequence
 
is_collection
 collection
 
is_enumerable
 sequence or collection
 
is_indexable
 sequence
 
is_directive
 macro or transform
 
is_node
 node
 

namespace:返回宏变量的命名空间,只能用于宏。

new:创建一个TemplateModel实现的变量。
<#assign word_wrapp = "com.acmee.freemarker.WordWrapperTransform" new()>
 

购物商城项目采用PHP+mysql有以及html+css jq以及layer.js datatables bootstorap等插件等开发,采用了MVC模式,建立一个完善的电商系统,通过不同用户的不同需求,进行相应的调配和处理,提高对购买用户进行配置….zip项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值