GoogleAppEngineでホストされているweb2pyアプリからメールを送信しようとしています。しかし、それは機能していません。web2pyで提供されているメール機能を使用しました。誰かがこれを行う方法はありますか?GAEのドキュメントで、PythonメールライブラリはGAEで機能せず、GAEメールライブラリを使用する必要があることを読みました。web2pyメールにも適用されますか?ありがとう
3 に答える
web2py gluon.tools.Mail クラス (Auth モジュールでも使用されます) は、そのままで GAE および非 GAE で動作します。正しい設定を渡すだけです。
mail=Mail()
mail.settings.server="smtp.example.com:25" or "gae"
mail.settings.sender="you@example.com"
mail.settings.tls=True or False
mail.settings.login="you:password"
複数のエンコーディング、MIME、および添付ファイルをサポートしています。
web2pygluon.tools.Mail
クラスは GAE で動作します。コード スニペットgluon.tools
の 310 行目を参照してください
try:
if self.settings.server == 'gae':
from google.appengine.api import mail
result = mail.send_mail(sender=self.settings.sender, to=to,
subject=subject, body=text)
これは GAE で動作する正しい設定です
mail=Mail()
mail.settings.server="gae"
mail.settings.sender="you@example.com" #This must be the email address of a registered
#administrator for the application, or the address
#of the current signed-in user.
mail.settings.login="you:password"
http://code.google.com/intl/en/appengine/docs/python/mail/emailmessagefields.htmlを参照して ください 。 sender 送信者の電子メール アドレス、差出人アドレス。これは、アプリケーションの登録済み管理者の電子メール アドレス、または現在サインインしているユーザーのアドレスである必要があります。管理コンソールを使用して、管理者をアプリケーションに追加できます。現在のユーザーの電子メール アドレスは、Users API で確認できます。
ごめん!私の英語はとても下手です。お役に立てれば幸いです。
Celso Godinho (celso.gcosta@gmail.com) サッカー 2010 年ブラジル ワールドカップ チャンピオン
ネイティブの App Engine メーラーを使用する必要があります: http://code.google.com/appengine/docs/python/mail/sendingmail.html