首页
App
&
Coffee
文档
项目
分享
反馈
俱乐部
登录
注册
Model生成器对名称带有小数点的字段出错
鲁智深
2019-09-24 10:58
Model生成器对名称带有小数点的字段出错
项目:
JFinal
1
评论区
鼻涕刘o0
2019-09-24 11:08
这个肯定出错啊。
回复
邓小杰
2019-09-24 11:45
命名规范。。。
回复
JFinal
2019-09-24 12:02
还真没碰到过这种情况,居然字段名还能带小数点
建议通过继承 MetaBuilder 扩展解决一下
回复
鲁智深
2019-10-16 10:24
@邓小杰
我知道命名规范,我只是提出一个bug而已~
回复
鲁智深
2019-10-16 10:30
@JFinal
应该是和我们平时在用“SELECT u.username, u.password.....”时的情况一样,数据库可能为了兼容这种情况把小数点也带进去了
回复
JFinal
2019-10-16 11:31
@鲁智深
我估计是生成器在输出带小数点的字段名的时候,当成了 field 表达式,可以通过拿到模板文件:
https://gitee.com/jfinal/jfinal/blob/master/src/main/java/com/jfinal/plugin/activerecord/generator/base_model_template.jf
然后,将这个文件复制出来,改一改里面出问题的表达式,最后再为生成器配置自己的模板来代替官方的模板:
generator.setBaseModelTemplate("my_template.jf");
generator.generate();
类似的,除了 base_model_template.jf 以外,其它三类模板也可以通过这种方法来自己定制
由于 enjoy 模板有十分丰富的表达式,所以可以通过改变表达式来解决,例如:
#(obj.name.abc)
上述表达式如果其中的 name.abc 是作为字段名存在的,而 obj 又是一个 Map 对象的话,可以改成:
#(obj.get("name.abc"))
或者改成:
#(obj["name.abc"])
上述这种表达式换一种写法的方式可以参考文档
回复
发送
我要反馈
热门反馈
扫码入社