在python-social-auth
中,当用户注册现有电子邮件地址时,会引发异常。
我设法抓住了这个例外:
msg = "%s" % exception
如果我打印msg
,我会得到以下输出:
(1062, "Duplicate entry 'email@id.com' for key 'email_UNIQUE'")
我想检测此异常并向用户显示自定义错误消息,例如:
此电子邮件ID已存在,请使用email@id.com登录或选择登录。
所以我的问题是,我如何只从异常消息中获取电子邮件地址?或者是否有{{ exception.email }}
之类的快捷方式来获取模板中的电子邮件地址?
答案 0 :(得分:0)
使用正则表达式
import re
strs="""(1062, "Duplicate entry 'email@id.com' for key 'email_UNIQUE'")"""
email_id =re.findall(r"'(.*?)'", strs, re.DOTALL)[0]
print 'This email id already exists please login with {} or choose to sign in.'.format(email_id)
#output This email id already exists please login with email@id.com or choose to sign in.