JFinal表单和附件一起提交,不用先上传文件再提交表单的方式,怎么写后端呢?

前端可以用ajax提交或者一个from提交都可以,这个怎么实现呢?

评论区

JFinal

2017-07-10 11:52

具体是啥意思?

杜福忠

2017-07-10 13:41

如果表单参数较少可以用
最简单的办法是在form表单的action属性上使用 urlPara 或者用问号挂参的方式将 path 传过来,这样就可以在 getFile() 之前通过 getPara(...) 获取了,例如:
action="/upload?filePath=/mypath/..."
filePath = getPara("filePath");
uf = getFile("filePath");


还有一种办法麻烦点,
先 uf = getFile()
然后,filePath = getPara("filePath");
最后再用 uf.renameTo(filePath + fileName) 做后续的转换

--------jfinal语录
23333333

pangjianhong

2017-07-10 13:49

@JFinal 就是一次提交表单数据和文件,同时提交,后台接收怎么写?

pangjianhong

2017-07-10 13:52

@杜福忠 我用的是 object.field + 文件的方式,好像接收到文件就没法getModel();

杜福忠

2017-07-10 21:00

先 uf = getFile()
然后,myModel = getModel();
最后再用 uf.renameTo(filePath + fileName) 做文件的后续操作

和正常使用是一样的, 就是需要先调用getFile() , 这样做是为了避免普通请求也要去判断协议做解析, 所以还不如自己在代码中手动标记(放在获取表单参数的前面做解析)

热门反馈

扫码入社