私は、HTMLメールに画像を添付しないで作業しているウェブサイトに問題が発生しています。私はそれが修正されたと思ったが、誰かがそれに登録しようとするたびに、私はサーバーエラー(500)を取得します。PythonウェブアプリケーションでPeskyサーバーエラーが発生しました
2016-08-31 08:26:15,757 :Internal Server Error: /register/
Traceback (most recent call last):
File "/home/asranet/.virtualenvs/testenv/local/lib/python2.7/site-packages/django/core/handlers/base.py", line 149, in get_response
response = self.process_exception_by_middleware(e, request)
File "/home/asranet/.virtualenvs/testenv/local/lib/python2.7/site-packages/django/core/handlers/base.py", line 147, in get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "./register/views.py", line 14, in index
form.save(commit=True)
File "/home/asranet/.virtualenvs/testenv/local/lib/python2.7/site-packages/django/forms/models.py", line 451, in save
self.instance.save()
File "./register/models.py", line 35, in save
email_client(self, site_settings.site_name + "Conference Registration", "You are officially registered for AdWind 2017")
File "./adWind/email_functionality.py", line 31, in email_client
fp = open(os.path.join(os.path.dirname(__file__), f), 'rb')
IOError: [Errno 2] No such file or directory: u'./adWind/static/Images/asranetLogo.jpg'
私がチェックし、ファイルがある:私は次のようにとにかくエラー・ログがあり、参照のカップルのように間違って行ったものを何の考えを変えませんしました。どのように進行するかわからない、実際にいくつかの助けを使用することができます。前もって感謝します!
P.S.
from __future__ import unicode_literals
from django.core.mail import EmailMultiAlternatives
from django.template.loader import render_to_string
import os
from email.mime.image import MIMEImage
from reportlab.platypus.doctemplate import SimpleDocTemplate
from reportlab.platypus import Paragraph, Spacer
from reportlab.lib.styles import getSampleStyleSheet
from django.http import HttpResponse
try:
from cStringIO import StringIO
except ImportError:
from StringIO import StringIO
def email_client(self, subject, text):
# Send the client an email
html_content = render_to_string("../templates/baseTemplates/emailToUser.html", {'salutation': self.salutation,
'last_name':
self.last_name,
'text_body': text})
msg = EmailMultiAlternatives(subject, 'Dear ' + self.salutation + ' ' +
self.last_name + '/n' + text,
'[email protected]', [self.email],)
msg.attach_alternative(html_content, "text/html")
msg.attach_file('/static/Images/asranetLogo.jpg')
msg.mixed_subtype = 'related'
f = '/static/Images/asranetLogo.jpg'
fp = open(os.path.join(os.path.dirname(__file__), f), 'rb')
msg_img = MIMEImage(fp.read())
fp.close()
msg_img.add_header('Content-ID', '<{}>'.format(f))
msg.attach(msg_img)
msg.send(fail_silently=True)
def email_admin(self, subject, text, sorted_self):
styleSheet = getSampleStyleSheet()
# Send the admin a PDF of client details
response = HttpResponse(content_type='application/pdf')
response['Content-Disposition'] = 'attachment; filename="clientDetails.pdf"'
string_buffer = StringIO()
new_pdf = []
header = Paragraph("AdWind Attendee Details", styleSheet['Heading1'])
new_pdf.append(header)
for element in sorted_self:
new_pdf.append(Paragraph(element[0], styleSheet['Heading3']))
new_pdf.append(Paragraph(element[1], styleSheet['BodyText']))
new_pdf.append(Spacer(1, 2))
doc = SimpleDocTemplate(string_buffer)
doc.build(new_pdf)
pdf = string_buffer.getvalue()
string_buffer.close()
msg = EmailMultiAlternatives(subject, text, "[email protected]", ["[email protected]"])
msg.attach(self.first_name + self.last_name + "adWind.pdf", pdf, "application/pdf")
msg.send(fail_silently=True)
email_functionality' 'のコードを表示してください。 –
こんにちは@DanielRoseman私は以下のコードを投稿しました。 –
質問の更新として投稿する必要があります。インデントが正しいことを確認してください。 –