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-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 15:44
必然可以,而且极其容易,妙不可言,按如下步骤:
1:将路由拆分为前端的后端两部分
class FrontRoutes extends Routes {
public void config() {
// 关键在这里,下面的拦截器会拦截所有 FrontRoutes 中配置的控制器
addInterceptor(new FrontInterceptor());
add("/", IndexController.class);
}
class AdminRoutes extends Routes {
// 这里配置后端拦截器
addInterceptor(new AdminInterceptor());
add("/admin", AdminIndexController.class);
}
2:在configRoute 中再汇总:
configRoute(Routes me) {
me.add(new FrontRoutes());
me.add(new AdminRoutes());
}
不仅可以分别对拆分的 FrontsAdmin、AdminRoutes 配置不同的拦截器,还可以配置不同的 me.setBaseViewPath(...),非常有利于实际的开发需求
路由的拆分还可以在多人团队开发时,为不同的团队分配不同的 Routes,统一规范路由,各自修改自己分到手的 Routes,可以避免在 git、svn 提交时造成代码冲突
2017-04-19 10:45
@ihss23 可以这样理解,随着使用时间的推移,理解会更深入,我前面讲的是基本区别,还有其它一些以后慢慢体会,例如 Model 中可以写与本 model 逻辑有关的一些代码,而 Record 是固定的一个类文件,不能在里面添加东西