2016-05-18 6 views
0

ファイルを添付するためのMailGunのドキュメントに従っていますが、すべての例で既にファイルが選択されています。ユーザーがアップロードした添付ファイルを送信するにはどうすればよいですか?MailgunとBottleを使ってユーザーが添付した添付ファイルを送信する

私はこのエラーを取得するコードは、メッセージを送信すると正常に動作しますが、私はこの部分を追加したときに...

files=[("attachment", open(request.files.data.file)),], 

TypeError: invalid file: <_io.BufferedRandom name=19> 

HTMLフォーム

<form action="/subr" method="post" enctype="multipart/form-data"> 
<input id="main" name="em" type="email" placeholder="E-MAIL" required><br> 
<textarea id="main" name="about" placeholder="DESCRIBE THE FILE"></textarea><br> 
<input id="main" type="file" name="data" required> 
<button type="submit">SUBMIT FILE</button> 
</form> 

ボトルルート:

@route('/subr', method='POST') 
def submitr(): 
    subject = "File Submission" 
    item1 = request.forms.get('em') 
    item2 = request.forms.get('about') 
    text = str(item1) + " " + str(item2) 
    requests.post("https://api.mailgun.net...", 
    auth=("api", "key-4..."), 
    files=[("attachment", open(request.files.data.file)),], 
    data={"from": "Mailgun Sandbox <[email protected]>", 
     "to": "Me <[email protected]>", 
     "subject": subject, 
     "html": text}) 
    return "<p>Success</p>" 

助けてください。

答えて

1

request.files.data.fileは既に開いています。ちょうどそれから読む。これは機能しますか?

files=[("attachment", request.files.data.file)], 
+0

送信されました。ありがとう、ロン –

関連する問題