如何使用ploneformgen显示以提交的形式上传的图像?

时间:2016-10-02 01:29:07

标签: python plone ploneformgen

我正在使用 ploneformgen 。 [编辑]我正在使用ploneformgen的自定义脚本适配器来使用提交的表单中的信息创建页面。问题是:我提交时生成的页面没有显示图像。我想创建一个包含文本和一个图像的页面/文档。我怎么能这样做?

我试过这段代码:

#Creating the folder in zope instance. I gave the name 'conteudo' to it.
targetdir = context.conteudo

#Here asking for the form,  so we can access its contents
form = request.form

#Creating an unique ID
from DateTime import DateTime
uid= str(DateTime().millis())

# Creating a new Page (Document)
targetdir.invokeFactory('Document',id=uid, title= 'Minha Página', image= form['foto-de-perfil_file'],text='<b>Nome Completo:</b><br>'+form
['nome-completo']+'<br><br>'+'<b>Formação:</b><br>'+form
['formacao']+'<br><br>'+'<b>Áreas de Atuação:</b><br>'+form['areas-de-    atuacao']+'<br><br>'+'<b>Links:</b><br>'+form['links'])

# Set the reference for our new Page
doc = targetdir.get('uid',targetdir)

# Reindexed the Page in the site
doc.reindexObject()

它只显示文字,但图片不存在。

我尝试使用“setImage”,但它显示了属性错误。我尝试制作另一个invokefactory而不是'Document',我把'Image'然后它只显示图像。

我应该在代码上修改哪些 文本和图片?

提前致谢。

2 个答案:

答案 0 :(得分:2)

在标准Plone文档内容类型上没有任何图像字段。

如果你使用旧的ATContentTypes在Plone 4上,你必须安装和配置collective.contentleadimage。 在Plone 5上或如果您使用的是基于敏捷的内容,您必须将新图像字段添加到您的模式中。

答案 1 :(得分:1)

对我来说唯一有用的不是创建“页面”,而是将其切换为“新闻项目”。