Jaki jest najlepszy sposób uzyskania kanonicznej reprezentacji nazwy użytkownika, która jest idempotent?Kanonizacja nazw użytkowników
chcę uniknąć tego samego problemu jak Spotify: http://labs.spotify.com/2013/06/18/creative-usernames/
szukam dobrej biblioteki to zrobić w Pythonie. Wolałbym nie robić tego, co robił Spotify (dwukrotne przeprowadzenie kanonizacji, aby sprawdzić, czy jest idempotent), a importowanie Twisted do mojego projektu jest odrobinę przesadzone, czy istnieje osobna biblioteka do tego?
Czy zamiast używania nazw użytkowników preferowane byłoby używanie adresów e-mail? Jak radzą sobie z tym duże witryny/firmy?
Czy trzeba obsługiwać nazwy użytkowników spoza ASCII? Jeśli odpowiedź brzmi "tak", poddaj się i rób to, co zrobili, jest to nietrywialny problem. Jeśli nie, to '. '(C dla c w orig_username.lower() jeśli c w string.punctuation + string.ascii_lowercase + string.digits])'. – AdamKG
Tak, potrzebuję wsparcia non-ascii. –
Cóż, proszę. Co do tego, jak radzą sobie z tym główni gracze ... Zakładam, że w większości przypadków tak się nie dzieje. Te, które prawdopodobnie spędzały na nim tyle samo wysiłku, co spotify. Nie znam żadnej samodzielnej biblioteki, ale nie byłbym zaskoczony, gdyby pojawił się teraz, używając podejścia z artykułu spotify i po prostu skopiował odpowiedni kod z zakręconego (to MIT). – AdamKG