如何在Django中使用文本类型作为主键

时间:2017-05-03 09:37:07

标签: python django

我正在学习Django,但是ORM并没有给出一个文本主键的方法。我希望有一个主要的如00RTTIN223。有没有其他方法可以绕过那个限制?

3 个答案:

答案 0 :(得分:3)

这是来自django docs的代码段:https://docs.djangoproject.com/en/1.11/topics/db/models/

class Fruit(models.Model):
    name = models.CharField(max_length=100, primary_key=True)

>>> fruit = Fruit.objects.create(name='Apple')
>>> fruit.name = 'Pear'
>>> fruit.save()
>>> Fruit.objects.values_list('name', flat=True)
['Apple', 'Pear']

答案 1 :(得分:1)

尝试使用具有唯一= True和primary_key = True

的CharField

答案 2 :(得分:0)

django documents about primary_key

class Product(models.Model):
    pid = models.CharField(max_length=255, primary_key=True)