沙之眼の虚拟字段
最后更新于:2022-04-01 23:46:50
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/6ec00f09ad22765bbbdf418edadaa2f7_323x176.png)
> 我爱罗经常用此招侦查,包括中忍考试偷窥答案,与迪达拉对战等。忍术优势:偷窥范围广,可以在任意场景下进行查探.
虚拟字段和沙之眼类似,是虚拟出来的,施(开)术(发)者通过查克拉施放出来的招式.专门用于偷(显)窥(示).
快速编辑元字段->添加虚拟字段(V1.6 beta2+)
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/afe83c8de98a6240126b01cb33fa1a32_518x154.png)
添加好的虚拟字段
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/508912ec8a4ead15c6bf14af973a6038_1130x228.png)
元字段属性解释:
> 字段表名=virtual 快速查询,导入,Form保存 会忽略此种字段
> 字段名自动开头标识 v_
> 虚拟字段禁止排序,和持久化,因为DB没有这个字段
> 虚拟字段主要用于临时的一些操作
虚拟字段实际案例:
**格式化显示**
使用场景: 格式化显示,多列计算...
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/6fdb3c36b6a5782078c9dfaffb5ea089_479x178.png)
~~~
// 格式化器-代码
function(value, row, index, field) {
return new Date().getFullYear() - row.age;
}
~~~
**自定义查询**
![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/9fee076d89b83ead674d7f6480ac893f_481x228.png)
~~~
public class TestIntercept extends MetaObjectIntercept {
@Override
public void queryBefore(AopContext ac) throws Exception {
int year = ac.ctrl.getParaToInt("query_v_year");// Eova查询字段名都是 query_+元字段名, 获取事请注意
int age = DateTime.now().getYear() - year;
// 覆盖查询条件,而year是虚拟字段,会被自动忽略(beta4新特性,请注意升级)
ac.condition = "and age = ?";
ac.params.add(age);
}
}
~~~
**自定义新增修改**
虚拟字段可以自行控制新增状态和编辑状态
可以在新增和修改时,弄出来几个字段然后通过Aop取值然后搞事情!
和上面的自定义查询套路差不多,只不过是其它的Aop方法.
';