uuid 作为关键字参数 <pk> 在 django urls.py
uuid as keyword argument <pk> in django urls.py
我在某些 Django 模型中使用 uuid4 作为 id。这就是为什么我不能在 urls.py
中使用 <int:pk>
,因为它不匹配。我可以使用另一个前缀来匹配这些 uuid,例如 a2182835-4518-cb95-8eaf-0d5a34105cb2
?
您可以使用 uuid 路径转换器而不是 int。来自文档
uuid - Matches a formatted UUID. To prevent multiple URLs from mapping to the same page, dashes must be included and letters must be lowercase. For example, 075194d3-6885-417e-a8a8-6c931e272f00. Returns a UUID instance.
因此,为了您的目的,将 <int:pk>
更改为 <uuid:pk>
应该可以解决问题
我在某些 Django 模型中使用 uuid4 作为 id。这就是为什么我不能在 urls.py
中使用 <int:pk>
,因为它不匹配。我可以使用另一个前缀来匹配这些 uuid,例如 a2182835-4518-cb95-8eaf-0d5a34105cb2
?
您可以使用 uuid 路径转换器而不是 int。来自文档
uuid - Matches a formatted UUID. To prevent multiple URLs from mapping to the same page, dashes must be included and letters must be lowercase. For example, 075194d3-6885-417e-a8a8-6c931e272f00. Returns a UUID instance.
因此,为了您的目的,将 <int:pk>
更改为 <uuid:pk>
应该可以解决问题