这是我的模型的样子。用户订购时。 django提供的订单ID很简单。像1,2,3 ..... 100。
class UserOrder(models.Model):
user = models.ForeignKey(settings.AUTH_USER_MODEL, related_name='orders',
on_delete=models.CASCADE)
cart = models.ForeignKey(Cart, related_name="orders", on_delete=models.CASCADE, null=True,
blank=True)
date = models.DateTimeField(default=datetime.now)
total_price = models.IntegerField(null=True, blank=True)
note = models.TextField(null=True, blank=True)
cancel_reason = models.TextField(null=True, blank=True)
cancelled = models.BooleanField(default=False)
confirmed = models.BooleanField(default=False)
def __str__(self):
return self.user.username
您的问题定义不明确,但是我想我理解您的问题,您需要一个不简单的id(查找字段)。
您可以使用uuid,并将此uuid用于视图集中的所有查找,而不是由django顺序创建的id。在视图中类似lookup_field ='uuid'的东西。
import uuid
class UserOrder(models.Model):
uuid = models.UUIDField(default=uuid.uuid4, unique=True, db_index=True, editable=False)
在此处[u0]了解有关uuid的更多信息