【发布时间】:2021-05-17 14:04:07
【问题描述】:
我有一个用于生成 09cd5677-8e02-4bcb-8895-5e3f79f20a4b 的帖子的 UUID 主键,此代码用于 URL post/09cd5677-8e02-4bcb-8895-5e3f79f20a4b 中的链接,但它看起来很糟糕,所以我添加了这个蛞蝓场
from django.utils.crypto import get_random_string
class Post(models.Model):
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
post_id = models.SlugField(default=get_random_string,null=False)
def get_absolute_url(self):
return reverse('postdetails', args=[str(self.post_id)])
def __str__(self):
return str(self.id)
现在我的帖子是这样的 - post/TtMgyttnnUzO 所以主要的问题是它是否可以对这篇文章/TtMgyttnnUzO 进行类似的匹配,就像生成类似的帖子 slug post/TtMgyttnnUzO 所以之后它会崩溃,我该如何保护网站来解决这个问题,如果有其他更好的解决方案谢谢
【问题讨论】:
标签: python django-models django-views django-templates uuid