2016-08-18 52 views
0

基本上在Python有一些方法通過使用random模塊得到8位隨機字母和Django的

但是在這裏我使用python的UUID模塊生成一個隨機字符串,以獲得與固定位數的隨機數像像下面

id = uuid.uuid4() 
print id 
UUID('decbb83f-9c35-4c37-a3d9-69e89bd8dd73') 

但我想從上面的隨機UUID對象

我們可以這樣做

只有8位數

這是不是一個UUID對象,但這裏的字符串

我將使用在Django UUID字段這8位隨機UUID(對象)數量如下面

uuid = models.UUIDField(unique=True, default=uuid.uuid4, editable=False) 

那麼如何得到的只有8位數字的字母數字隨機UUID對象?

回答

0

這是不可能的,因爲一個UUID是一個16字節,但你可以生成一個唯一的8字符串。

如果您在Django模型現場看UUIDField類,最大長度設置爲32.You沒有選擇在** kwargs指定MAX_LENGTH

def __init__(self, verbose_name=None, **kwargs): 
     kwargs['max_length'] = 32 
     super(UUIDField, self).__init__(verbose_name, **kwargs)