起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10625|回复: 16

[结贴] 如何在保存后,让UI中显示后台生成的字段值

[复制链接]

532

主题

2107

帖子

4310

积分

论坛元老

起步萌新

Rank: 8Rank: 8

积分
4310
发表于 2017-5-16 14:59:27 | 显示全部楼层 |阅读模式
版本: 小版本号:
数据库: 服务器操作系统: 应用服务器:
客户端操作系统: 浏览器:
【1】例如,ontoloty文件中,某字段没有设置默认值,UI中新增一条记录,该字段是空的。点击保存后,我在saveAction before事件中,给该字段赋值。保存成功后,UI中如何显示后台生成的值。

【2】还有问题,createAction事件和saveAction事件有什么关系?为什么我新增一条数据保存后,不能触发createAction的事件,但是可以触发saveAction的事件



及时结贴是个好习惯

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36178
发表于 2017-5-16 16:01:49 | 显示全部楼层
1.保存成功后,UI中如何显示后台生成的值。什么意思?后台生成的值指的什么?
2.createAction控制是否可以新增数据
saveAction是最终执行insert、update、delete语句的

远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

532

主题

2107

帖子

4310

积分

论坛元老

起步萌新

Rank: 8Rank: 8

积分
4310
 楼主| 发表于 2017-5-16 16:20:18 | 显示全部楼层
jishuang 发表于 2017-5-16 16:01
1.保存成功后,UI中如何显示后台生成的值。什么意思?后台生成的值指的什么?
2.createAction控制是否可以 ...

某个字段没有设置默认值,我点新增,那么该字段就是为空的。
此时我点击保存后,在saveAction的before事件中,我给该字段赋值。
保存成功后,数据库是有值的(在后台赋值了),但是UI中,该字段还是空的吧。
及时结贴是个好习惯
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36178
发表于 2017-5-16 16:49:36 | 显示全部楼层
在data的onSaveCommit事件中刷新数据
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

532

主题

2107

帖子

4310

积分

论坛元老

起步萌新

Rank: 8Rank: 8

积分
4310
 楼主| 发表于 2017-5-17 10:17:12 | 显示全部楼层
jishuang 发表于 2017-5-16 16:01
1.保存成功后,UI中如何显示后台生成的值。什么意思?后台生成的值指的什么?
2.createAction控制是否可以 ...

“createAction控制是否可以新增数据
saveAction是最终执行insert、update、delete语句的”

createAction事件怎么控制是否新增。不太理解。

我点击新增-保存后,发现并没有触发createAction的before或者after事件啊
及时结贴是个好习惯
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36178
发表于 2017-5-17 13:28:21 | 显示全部楼层
没有设置这个action,是不能新增的会提示没有这个action
createXxxxAction封装了新建概念数据的业务逻辑,实现了产生一条或多条空数据并封装成table对象的功能

BizData组件是针对BizServer action扩展的Data组件,BizData组件理解BizServer的createAction,onNewCreateParam事件是BizData组件创建准备createAction参数的事件,当扩展了createAction可以通过这个事件进行参数赋值和修改;
下面重点讲一讲BizData新增默认值;
在BizModel中可以看到createAction有两个public参数table和defaultValues,table默认值优先级高于defaultValues,也就是说当table中的列没有赋值时才使用defaultValues默认值;除了action层面的默认值还有概念关系上的默认值,当createAction没有table和defaultValues默认值时使用概念关系上的默认值,那么整个Biz端新增默认值的优先级就是:
table > defaultValues > 概念上关系默认值 > 关系默认值
有了上面的认识对于BizData的新增默认值就好理解了,首先onNewCreateParam事件中table和defaultValues对应的就是createAction的参数table和defaultValues,默认值优先级就显而易见了,到这大家可能会问,newData中option参数上的defaultValues和这些默认值又是什么关系?newData中option参数上的defaultValues最终对应的是onNewCreateParam事件中table参数,也就是说newData中option参数上的defaultValues优先级最高
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

532

主题

2107

帖子

4310

积分

论坛元老

起步萌新

Rank: 8Rank: 8

积分
4310
 楼主| 发表于 2017-5-17 14:16:13 | 显示全部楼层
jishuang 发表于 2017-5-16 16:49
在data的onSaveCommit事件中刷新数据

如果主键没有设置 默认表达式,那么点新增的时候,UI中 new出来的记录的主键是没有值的,也就是没有rowid吧。
然后,在详细页,保存成功后,refreshData,详细页数据会显示另外一条记录。因为我刚才新增的记录是没有rowid的
及时结贴是个好习惯
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36178
发表于 2017-5-17 15:12:58 | 显示全部楼层
主键没有设置默认值,新增的是就报错了,不会生成主键没有值的记录
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

532

主题

2107

帖子

4310

积分

论坛元老

起步萌新

Rank: 8Rank: 8

积分
4310
 楼主| 发表于 2017-5-17 16:24:43 | 显示全部楼层
jishuang 发表于 2017-5-17 15:12
主键没有设置默认值,新增的是就报错了,不会生成主键没有值的记录

我在saveAction 的before事件里,给他设置主键了。。。我前面已经说过了。
所以保存成功后,UI中是没有主键的对吧,那么刷新后,index就change了,详细页不会显示你刚才新增的记录。

所以我才问,不用refreshData,用其他方法,在新增后带回我后台生成的字段值。
及时结贴是个好习惯
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36178
发表于 2017-5-17 16:42:55 | 显示全部楼层
我说的是新增就报错了,到不了保存

概念中的主键关系必须设置默认值,没有设置默认值新增就有问题
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-6-23 07:34 , Processed in 0.063067 second(s), 25 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表