【问题】使用JFinal默认模版,configHandler中ContextPathHandler设置无法使用

config中的设置

	@Override
	public void configEngine(Engine me) {
		me.addSharedFunction("common/layout.html");
	}
	
	@Override
	public void configHandler(Handlers me) {
		me.add(new ContextPathHandler("basepath"));
	}

html页面

#@layout()

#define main()

    ${basepath}

#end


页面只显示 ${basepath},模版页面也是一样

评论区

要输就输给追求

2017-05-08 12:22

输出是#() 不是${}

wonkkun

2017-05-10 09:45

@要输就输给追求 初次使用ifnal,就碰见这个问题了,看了好多答案,这次终于解决我的问题了,多谢多谢;别的全是说用 ${CONTEXT_PATH},这个${}是不是和模板有关,freemarker的路径获取应该用${}这个吧!有机会测试下。

狗狗

2017-06-06 15:00

我也是碰到了这个问题,改成#(base_path)和之后页面什么也没有了啊

要输就输给追求

2017-06-06 17:29

@狗狗 模板是用的jfinal自带的模板?

要输就输给追求

2017-06-06 17:30

@狗狗 看看编译器控制台报错没有

狗狗

2017-06-10 12:02

@要输就输给追求 对的,貌似这个设置在jfinal3.0自带的模板里面不起作用,

JFinal

2017-06-11 16:17

ContextHandler 对所有模板引擎都有效,jfinal template engine 之下这样来输出:
#(basepath)

热门反馈

扫码入社