FreeMarker学习(宏<#macro>的使用)】的更多相关文章

1.错误描述 freemarker.template.TemplateException:Macro mainSelect has no such argument:params 2.错误原因 在宏定义中,没有params这个参数,但是在运用时却有params参数 3.解决办法 在宏定义加个params参数…
copy自http://demojava.iteye.com/blog/800204 以下内容全部是网上收集: FreeMarker的模板文件并不比HTML页面复杂多少,FreeMarker模板文件主要由如下4个部分组成: 1,文本:直接输出的部分 2,注释:<#-- ... -->格式部分,不会输出 3,插值:即${...}或#{...}格式的部分,将使用数据模型中的部分替代输出 4,FTL指令:FreeMarker指定,和HTML标记类似,名字前加#予以区分,不会输出 下面是一个FreeM…
在模板中定义的变量有三种类型: 引用 1:plain变量:可以在模板的任何地方访问,包括使用include指令插入的模板,使用assign指令创建和替换. 2:局部变量:在宏定义体中有效,使用local指令创建和替换. 3:循环变量:只能存在于指令的嵌套内容,由指令(如list)自动创建:宏的参数是局部变量,而不是循环变量 局部变量隐藏(而不是覆盖)同名的plain变量:循环变量隐藏同名的局部变量和plain变量 <#assign x = "plain"> 1. ${x}…
FreeMarker 笔记: 1. 注释:   <#-- 注释内容 -#> 2.<#if condition> content1 <#else> content2 <#if> 条件可以表示:a==b , a!=b,a>b,a<b ,a<=b,||,&&,!等 eg: <#if user.name=="rhythmk"> A good boy! <#if> 3.list 指令 <…
参考:http://freemarker.foofun.cn/dgui_quickstart_basics.html assign: 使用该指令你可以创建一个新的变量, 或者替换一个已经存在的变量 attempt, recover: 如果你想让页面成功输出内容,尽管它在页面特定位置发生错误也这样, 那么这些指令就是有用的.如果一个错误在 attempt block 执行期间发生, 那么模板执行就会中止,但是 recover block 会代替 attempt block 执行. 如果在 atte…
1.错误描述 六月 25, 2014 11:32:49 下午 freemarker.log.JDK14LoggerFactory$JDK14Logger error 严重: Template processing error: "Macro select has no such argument: name" Macro select has no such argument: name The problematic instruction: ---------- ==> ma…
宏是Jinja2特有的,像Django则没有这个. 先新建一个项目macroDemo: 然后在templates文件夹中新建index.html文件,并在代码中返回渲染后的文件: 然后回到index.html,现在假设我们要写一个登录的表单: 代码: <!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>宏<…
宏 对宏(macro)的理解: 把它看作 Jinja2 中的一个函数,它会返回一个模板或者 HTML 字符串 为了避免反复地编写同样的模板代码,出现代码冗余,可以把他们写成函数以进行重用 需要在多处重复使用的模板代码片段可以写入单独的文件,再包含在所有模板中,以避免重复 定义宏 {% macro input(name,value='',type='text') %} <input type="{{type}}" name="{{name}}" value=&q…
C's Macro Introduction 1.The Connect Macros: ## 这是一个预处理连接符,这个操作符主要用来将两个符号连接成为一个完整的宏符号.通过下面的代码,可以看到其具体的使用方法: 如下例子: #include <stdio.h> struct macro { int N; char M; }; struct macro macro_drv = {100,20}; #define XNAME(n) x##n #define Macro(x) x##_drv.N…
[易学易懂系列|rustlang语言|零基础|快速入门|(22)|宏Macro] 实用知识 宏Macro 我们今天来讲讲Rust中强大的宏Macro. Rust的宏macro是实现元编程的强大工具. 宏主要作用为: 1.减少重复代码. 2.编写DSL(Domain-specific languages. 3.可变参数接口定义. 在Rust主要分两种宏: 声明式宏declarative macros (一般用macro_rules!定义) 过程式宏 procedural macros,像一个过程函…