我无法在不部署的情况下找到如何在我的本地项目中发送电子邮件。 我无法设置发件人电子邮件,该方法无效......
class MailHandler(BaseHandler):
def get(self):
message = mail.EmailMessage()
message.sender = 'my@email.com'
message.to = 'some@email.com'
message.subject = 'test'
message.body = "Email test, that's all."
message.send()
self.render_ok()
答案 0 :(得分:1)
您可以使用以下命令行参数设置Appengine启动器[编辑 - >应用程序设置]:
--enable_sendmail
--smtp_host=...
--smtp_port=...
--smtp_user=...
--smtp_password=...
请参阅: https://cloud.google.com/appengine/docs/python/tools/devserver#Python_Command-line_arguments
要进行测试,设置本地邮件服务器非常有用。
答案 1 :(得分:0)
documentation解释了您正在寻找的内容。默认情况下,它只会记录消息内容。
答案 2 :(得分:0)
单元测试收集存根中的已发送消息,可在此类测试期间/之后打印或测试:
class EmailTestCase(unittest.TestCase):
def setUp(self):
self.testbed = testbed.Testbed()
self.testbed.activate()
self.testbed.init_mail_stub()
def tearDown(self):
mail_stub = self.testbed.get_stub(testbed.MAIL_SERVICE_NAME)
for message in mail_stub.get_sent_messages():
print message.body
self.testbed.deactivate()
def test_mailhandler(self):
# put your tests here. something like
MailHandler().get()