我正在编写一个 PloneFormGen 自定义操作适配器,以便从表单中的文件字段将文件对象添加到文件夹中。这是脚本:
target = context.filefolder
form = request.form
uid = str(DateTime().millis())
target.invokeFactory("File", id=uid, file=form['arquivo-do-cv_file'])
obj = target[uid]
“filefolder”是 PFG FormFolder 的父文件夹内的文件夹名称。此脚本配置为使用 Manager 代理角色运行。
问题是,以这种方式创建的文件对象在我查看它们时不会显示“单击此处下载文件”链接。但是,如果我从 URL 的末尾取消“/view”部分,则可以下载文件。调用 invokeFactory 创建 File 对象时我缺少什么?
更新:我的意思是我没有得到文档的“文件名-文件类型,以 KB为单位的大小(以字节为单位的大小) ”链接,位于署名下方。当我使用普通的 Plone UI 创建一个 File 对象时,它确实出现了。