uuid作为Django urls.py中的关键字参数<pk>

时间:2018-10-02 14:54:10

标签: django uuid

在某些Django模型中,我正在使用uuid4作为id。这就是为什么我不能在<int:pk>中使用urls.py的原因,因为它不匹配。我可以使用另一个前缀来匹配这些a2182835-4518-cb95-8eaf-0d5a34105cb2这样的uuid吗?

1 个答案:

答案 0 :(得分:3)

您可以使用uuid路径转换器代替int。来自文档

  

uuid-匹配格式化的UUID。为防止多个URL映射到同一页面,必须包含破折号并且字母必须小写。例如075194d3-6885-417e-a8a8-6c931e272f00。返回一个UUID实例。

因此,出于您的目的,将<int:pk>更改为<uuid:pk>应该可以解决问题