首页
App
&
Coffee
文档
项目
分享
反馈
俱乐部
登录
注册
Jfinal 创建sql指令,启动部署提示找不到命令
MisterJion
2017-02-16 10:43
刚刚升级3.0,试用了下sql管理,挺好用的,但是在创建sql指令之后,启动移植报找不到指令,可我在配置类已经用
addDirective
添加了啊,求解
项目:
JFinal
1
2
评论区
JFinal
2017-02-16 11:25
贴出来具体的代码片段,以及异常消息,尤其是 ActiveRecordPlugin 的配置
回复
MisterJion
2017-02-16 11:46
@JFinal
这个是异常信息
Directive not found: #like
Template: "/user/user.sql". Line: 83
com.jfinal.template.stat.ParseException: Directive not found: #like
-------------------------------------------------
这个是添加指令
public void configEngine(Engine me) {
me.addDirective("like", new PLike());
}
回复
JFinal
2017-02-16 11:49
@MisterJion
改成如下代码即可:
arp.getSqlKit().getEngine().addDirective("like", new PLike());
因为 configEngine(Engine me) 仅仅是配置的 view 层使用的 Einge,而 ActiveRecordPlugin 的 Engine 是独立的,不仅与 view 层独立,多数据源之间的 Engine 也是独立的,这样就可以极为灵活的去定制
回复
JFinal
2017-02-16 11:50
如果不将 Engine 独立出来,那么 sql 管理的 Engine 就会干扰到 view 层的 Engine,尤其是对命名空间会有污染
回复
MisterJion
2017-02-16 11:52
@JFinal
我看代码里面确实SQLkit里new的一个engine,OK。话说,现在 Jfinal有对sql里的模糊查询有没有什么支持
回复
qxy
2017-09-26 11:02
@JFinal
但是我这边调用不了==》me.getSqlKit().getEngine().....没有这个属性调用
回复
发送
我要反馈
热门反馈
扫码入社