2016-08-31 3 views
0

Ich habe ein Problem mit einer Website, an der ich gerade arbeite, keine Bilder an HTML-E-Mails anzuhängen. Dachte, ich hatte es behoben, aber jedes Mal, wenn jemand versucht, sich darauf zu registrieren, erhalte ich einen Serverfehler (500). Ich habe mich verändert nur ein paar Referenzen, so dass keine Ahnung, was da schief ging, sowieso Fehlerprotokoll ist wie folgt:Ärgerlicher Serverfehler in Python-Webanwendung

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' 

Ich überprüfte und die Datei dort. Keine Ahnung wie es weitergeht, könnte wirklich Hilfe gebrauchen. Vielen Dank im Voraus!

P.S. Hier ist der Code für die E-Mail-Funktionalität:

+0

zeigen Sie den Code von 'email_functionality'. –

+0

Hallo @DanielRoseman Ich habe den Code unten gepostet (zu groß für eine Antwort musste also "antworten"). –

+0

Sie sollten es als Update auf Ihre Frage veröffentlichen. Bitte stellen Sie sicher, dass Sie den Eindruck korrekt eingegeben haben. –

Antwort

0

In Django befindet sich das statische Verzeichnis normalerweise unter einem Verzeichnis module_name. Ich schlage vor, wenn Sie Ihre Pfade in eine relative:

msg.attach_file('static/[module_name]/Images/asranetLogo.jpg') 

und

f = 'static/[module_name]/Images/asranetLogo.jpg' 
+0

versuchte es einfach, aber kein Glück, ich habe Angst. –

+0

Was ist mit 'statisch/Bilder/asranetLogo.jpg'? – navit

+0

ja versuchte es gestern aber ohne Erfolg. Das ist das Hauptproblem mit einem Server Error 500, es sagt Ihnen nichts wirklich. –