Ale*_*lex 3 email django django-forms python-3.x django-oscar
我正在处理 django 中的表单,一旦填写完毕,就会向用户发送一封电子邮件,但我收到以下错误:
我已经检查了我的代码,我的问题来自这个函数:
def send_manually_exception_email(request, e):
exc_info = sys.exc_info()
reporter = ExceptionReporter(request, is_email=True, *exc_info)
subject = e.message.replace('\n', '\\n').replace('\r', '\\r')[:989]
message = "%s\n\n%s" % (
'\n'.join(traceback.format_exception(*exc_info)),
reporter.filter.get_request_repr(request)
)
mail.mail_admins(subject, message, fail_silently=True, html_message=reporter.get_traceback_html())
Run Code Online (Sandbox Code Playgroud)
我能做些什么?
虽然比崩溃要好,但 OP 可能不想生成主题行空白的电子邮件。您可以只使用错误的字符串表示形式,例如:
print(e)
print(f'Function x gave error {e}')
Run Code Online (Sandbox Code Playgroud)
在OP的代码中,设置可能就足够了:
subject = str(e)
Run Code Online (Sandbox Code Playgroud)
或者,如果错误没有消息,请使用此作为替代方法:
subject = getattr(e, 'message', str(e)).replace('\n', '\\n').replace('\r', '\\r')[:989]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16707 次 |
| 最近记录: |