Plone:将PloneFormGen自定义脚本适配器中的变量传递给Mailer Adapter

时间:2011-09-28 13:32:59

标签: plone ploneformgen

我有一个带有自定义脚本适配器的PloneFormGen表单,在表单提交时,会生成一个新的uid并创建一个以该uid作为其ID的文件夹。

from DateTime import DateTime
uid = str(DateTime().millis())
target.invokeFactory("Folder", id=uid, title=form['your-name'])

它使用表单中的输入在该文件夹中创建各种项目,包括名为“newpage”的文档,然后我想在电子邮件中包含一个链接。有没有办法将uid变量从脚本适配器传递到邮件程序适配器,以便我可以生成文件夹中新文档的链接?

例如,脚本适配器创建一个ID为1317142676351的文件夹,因此在提交表单时,其中一个新页面的URL为http://mysite.com/submissions/1317142676351/newpage/。我希望能够在我的一个Mailer Adapter模板中包含该链接,但我不知道如何获取在自定义脚本适配器中生成的uid,或者甚至可能。首先发生什么,邮件程序或自定义脚本适配器?

非常感谢任何正确方向的推动!

1 个答案:

答案 0 :(得分:2)

只需将id值复制到请求中即可。在脚本中,代码如下:

request.set('custom_id', id)

会做到的。如果需要自动处理变量,请在表单中创建匹配的隐藏变量。