0

ではpython-social-auth、ユーザーが既存の電子メール アドレスで登録すると、例外が発生します。

私はこの例外をキャッチすることができました:

msg =   "%s" % exception

を印刷msgすると、次の出力が得られます。

(1062, "Duplicate entry 'email@id.com' for key 'email_UNIQUE'")

この例外を検出し、次のようなカスタム エラー メッセージをユーザーに表示したいと思います。

この電子メール ID は既に存在します。email@id.com でログインするか、サインインを選択してください。

私の質問は、例外メッセージからメールアドレスだけを取得するにはどうすればよいですか? {{ exception.email }}または、テンプレートでメールアドレスを取得するようなショートカットはありますか?

4

1 に答える 1

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.
于 2014-09-01T11:28:54.517 に答える