В веб-приложении используются ссылки, содержащие id юзера, хотелось бы сделать эти ссылки не просто по айдишнику, а скрыть его за какой-то строкой. Дело не в безопасности, просто из эстетических соображений - чтобы пользователь айдишник не видел ну и вообще солиднее выглядела ссылка.
То есть нужны две функции, способные айдишник в виде int перевести в строку и обратно:
encode: 32 => 3dhRf2nmj
decode: 3dhRf2nmj => 32
hash и hashlib не подходят, т.к. нет декодирования.
django.core.signing.Signer возвращает строку, содержащую перед двоеточием айдишник, тоже не то.
Самые простые решения, найденные гуглением, выглядят примерно так. Может, есть что покороче?
Или проще сделать столбец uuid и его вставлять в url?