2017-04-22 16:00

jfinal 3.1 已添加 arp.addSqlTemplate(IStringSource) 方法,正在内测中,多多关注社区动态

2017-04-21 22:07

@杜福忠 空格是防不了过滤的,楼主是用的 & gt & lt 这样的转义字符搞定的

2017-04-21 16:26

@leomj jfinal template engine 考虑过直接支持 isXxx() 方法的 model.xxx 形式的访问,为了提升性能,少去判断这个 isXxx() 方法是否存在是权衡后的结果

因为 object.field 这种访问方式极其普遍,可以支持 java bean、model、Map、public field 等形式的存取,而 isXxx() 这种用法频率并不高,并且 isXxx() 这种方法调用可以搞定这种情况

2017-04-21 15:59

@qiongaxiu 习惯于传统方式的用传统方式也挺好

2017-04-21 15:46

@qiongaxiu 还有一个办法就是用传统的开发模式进行项目的启动代替 jfinal 整合进去的 jetty

jfinal 项目是标准的普通 java web 项目,因此,你以前所有有关 java web 的知识依然有效,用上你以前熟悉的方式就好

2017-04-21 14:53

打通后,这样用都可以: #("abcdef".substring(...))
直接调用对象上的方法

2017-04-21 14:52

这种情况直接调用方法就好:
#if (model.isXxx())
#(model.isXxx())
#end

jfinal template engine 是与后端 java 直接打通的,just do it

2017-04-21 14:50

@Ferrari8899 靠,比我告诉你的方法还简单,牛逼

2017-04-21 11:51

@Ferrari8899 记得搞定后回来分享一下

2017-04-21 11:49

@Ferrari8899 前面说得已经很清楚了,你先将这个 div 内容从 template 中过一遍,这样就生成了动态内容,生成的内容再发给客户端的 js:
renderHtml(renderToString("div.html"));

关键点在于,你要将 div 的内容先用模板引擎渲染一次,然后将渲染的结果响应给:
$("#id").load("url");

2017-04-21 11:29

这样就好解决了,让 js 请求 action,假定你的这个 div 在一个名为 "div.html" 的文件之中,这样来用一下 controller 中的 renderToString:
String ret = renderToString(...);
renderHtml(ret);

你还可以通过下面的代码在 controller 之外任意去用 Engine 对象:
Template template = RenderManager.me().getEngine().getTemplate("div.htm
String ret = template.renderToString(...);

2017-04-21 11:21

@qiongaxiu 在 idea 之下,开发的时候先去掉 provided,打成war 之前再添加一下。 在 eclipse 下可以一直是 provided没有关系

2017-04-21 11:20

问题描述得不是很清楚,我只能先猜一猜

添加 me.add(new SessionInterceptor()) 了没有?
注意 # 这个字符要是英文输入,不能是中文全角输入

2017-04-20 19:44

PathKit.getRootClassPath() 源代码如下:
String path = PathKit.class.getClassLoader().getResource("").toURI().getPath();
rootClassPath = new File(path).getAbsolutePath();

该目录会指向 class 文件被编译输出到的路径,如果不满足需要可以通过如下几种方式去调整:
1:调用 setRootClassPath(...) 自行指定
2:使用 "../../xxx/yyy" 这种相对路径去调整
3:让 class 输出到 getRootClassPath() 想要到达的地方

2017-04-20 16:29

@ihss23 你的提问比较有深度