任何人都可以告诉我如何从plone网站发送邮件。我想做的是(将列出我的观点)
我的html页面有点像:
<html>
<form action="mailto" method = "post" name="mailto">
Name :<input type="text" name="fname" />
address :<input type="text" name="address"/>
</form>
</html>
mailto.py
class MailTo(BrowserView)
def __init__(self,context,request):
self.context = context
self.request = request
def registerdetail(self):
mailhost = self.context.MailHost
form= self.request.form
name=form.get('fname')
address=form.get('address')
mto = 'xxxx@gmail.com'
msg="""
Name:%s
Address:%s
""" %(name,address)
mailhost.send(messageText=msg, mto=mto, mfrom='yyy@yahoo.com')
return self.sucesspage()
我通过在“mto=gsgfsf@gmail.com”中提供我自己的mailid直接测试了它,但我没有收到任何邮件。任何人都可以告诉我的事情是错的。
提前致谢
答案 0 :(得分:3)
你会发现简单地使用PloneFormGen(Plone的一个流行的附加组件)来构建你的表单要容易得多。您可以按照以下位置的说明设置表单的电子邮件目的地:http://developer.plone.org/reference_manuals/active/ploneformgen/select_mail.html
答案 1 :(得分:3)
根据您在邮件列表中的说法,您的问题是您安装了开发人员工具Products.PrintingMailHost。
安装的电子邮件将打印到控制台而不是发送。这样您就可以测试发送电子邮件而无需实际发送电子邮件。
答案 2 :(得分:2)
确认您已将Plone配置为先发送邮件。在Site Setup -> Mail
中,输入您的邮件服务器信息,然后点击保存并发送测试电子邮件。
然后在Python中使用MailHost
应该可以工作(除非你使用的是Products.PrintingMailHost打印电子邮件而不是发送它。)