1
我一直在使用這個網址的用戶名正則表達式在Django了一會兒:用戶名Django的URL正則表達式接受點
url(r'^.../(?P<username>[-\w]+)/$'
但現在,我已經有了一個奇怪的情況下,有時谷歌與答案這樣的用戶名:
luke.skywalker
代替lukeskywalker
的
它看起來像我的正則表達式不接受點 - 我得到一個NoReverseMatch
錯誤。有人可以幫助我一個正確的正則表達式嗎?
嘗試:[A-ZA-Z]'+',你可能要檢查的第一個答案[這裏] (http://stackoverflow.com/questions/1547899/which-characters-make-a-url-invalid) – Gocht
請注意,谷歌做的非標準行爲,[email protected]和[email protected]是實際上是同一個電子郵件地址。你的問題是你不符合他們的要求(Daniel Roseman的回答應該處理,並且得到Gocht的評論答案不會的短劃線/下劃線/數字),或者你還需要「正常化」事情,以便luke.skywalker和lukeskywalker被視爲相同的用戶名?[我其實更喜歡另一種方式,我可以從同一個電子郵件地址創建一個相對較大的測試帳戶,但我可以看到正常情況可能會受到多大的影響] – Foon
@Foon感謝您的信息。我正在使用Python Social Auth進行記錄(以防有人發現這種情況)。 – alejoss