Exemplo n.º 1
0
def url_str_to_user_pk(s):
    User = get_user_model()
    # TODO: Ugh, isn't there a cleaner way to determine whether or not
    # the PK is a str-like field?
    if getattr(User._meta.pk, 'remote_field', None):
        pk_field = User._meta.pk.remote_field.to._meta.pk
    else:
        pk_field = User._meta.pk
    if issubclass(type(pk_field), models.UUIDField):
        return pk_field.to_python(s)
    try:
        pk_field.to_python('a')
        pk = s
    except ValidationError:
        pk = base36_to_int(s)
    return pk
Exemplo n.º 2
0
 def test_int_to_base36(self):
     n = 55798679658823689999
     b36 = 'brxk553wvxbf3'
     assert int_to_base36(n) == b36
     assert base36_to_int(b36) == n
Exemplo n.º 3
0
 def test_int_to_base36(self):
     n = 55798679658823689999
     b36 = 'brxk553wvxbf3'
     assert int_to_base36(n) == b36
     assert base36_to_int(b36) == n