上传文件
在应用内制作一个接口,接口类型选择外部代理接口,接口url写http://adp-internal.hylanda.com/api/datasource/upload,英文名中文名随意。
2.在界面编辑器内里面搜索控件名“file”,找到“文件上传”按钮控件
3.点击文件上传按钮,右侧选择文件域,选择POST方式,接口地址写上第一步创建的接口,选中“数据映射”,里面左框填上param ,右框内容见下一步细说。
4.右框内容是一个json,但有点特殊,请先把这段东西贴进去(左右双引号也要带)
"{"userId":"0","projectId":0,"sourceId":0,"firstLineAsField":true,"option":"excel2mysql"}"
上文是默认的覆盖模式
如果要每次都是追加模式,则这样写
"{"userId":"0","projectId":0,"sourceId":0,"firstLineAsField":true,"option":"excel2mysql","append":true}"
保存后,点击左侧代码编辑框,将刚刚粘进去的那段json左右两边的 \”删掉
千万别多删也别少删,删完是这样子的:
5.现在开始改里面的三个0(只改0,别改0左右两边的字符)
6.第一个userid,在我的账号信息里能查到
7.第二个projectid,在url里能看到
8.第三个sourceid,需要先确定excel要上传到哪个数据源,在数据源配置里确定数据源
9.点击f12,打开开发者工具,打开网络标签
10.这时点击数据源右侧的“更新”按钮,在开发者工具的“网络”标签内,将出现一行新的记录,点击它
11.点击后在右侧会出现这个请求的详情,找请求内容的标签,可以看到sourceid
12. 回到应用编辑界面,将三个0都填好
13. 页面部分就做完了,请到“框架配置”配置页面,进入dev展示页面查看(不建议点击右上角的预览)
14. 上传的excel文件,一定要从已有mysql表中直接导出的,这样第一行会有标题,省的自己弄出错
15. 另外,excel的sheet页名字,就直接对应mysql表名,请注意不要写错了
16. 上传时,如果在覆盖模式下,后台程序会将表完全清除,并将excel里的数据覆盖过去
17. 使用追加模式时,excel内数据将会已insert形式插入目标表(该功能不会update),但如果出现问题(例如字段长度太短insert失败,或自己建了主键或唯一索引导致的冲突)都会出现导入失败,整个导入操作将完整回退,数据库表会回复到导入前的状态。
问题没有解决?请留言提问











