Google App Engine Python:如何在邮件中显示textarea值

0 投票
2 回答
906 浏览
提问于 2025-04-16 05:03

我有一个HTML表单,里面有一个叫做 <textarea name="message"></textarea> 的区域,我通过 message = self.request.get('message') 来获取用户输入的内容。

然后我使用邮件API来发送邮件。

message = mail.EmailMessage(sender="abc@domain.com", subject="Testing")
message.to = 'bcd@domain.com'
message.html = """The Message: %s """ % (message)
message.send()

问题是,我在邮件里只看到“消息:”这几个字,但没有看到用户输入的内容,我该怎么解决这个问题呢?

2 个回答

1

我对GAE邮件API不太熟悉,但你似乎把message这个变量名重新赋值给了一个新东西,这里是一个对象,然后你试图把这个对象当作消息的内容。:s

你可以试试下面这样的写法:

message = self.request.get('message')
mailer = mail.EmailMessage(sender="abc@domain.com", subject="Testing")
mailer.to = 'bcd@domain.com'
mailer.html = """The Message: %s """ % (message)
mailer.send()

在实际应用中,你可能还想检查一下message这个变量的值是否为空。

4

你把变量名'消息'同时用在了文本框里的原始文本和你要发送的邮件上。试试这样做:

text = self.request.get('message')
message = mail.EmailMessage(sender="abc@domain.com", subject="Testing") 
message.to = 'bcd@domain.com' 
message.html = """The Message: %s """ % (text) 
message.send()

撰写回答