niceyes 发表于 2021-9-30 11:25:10

url(r'^post/(?P<pk>\d+)/$' 这个<pk>什么鬼

我在某教程看到这种写法,视图函数是ModelViewSet 类 (django rest framework框架)
我理解的是,'(?P<pk>\d+)'是应该是分组显示 ,相当于:{'pk': ' ',} ,相当于 url传参:pk=' '
但是我实际字段是Id
改成,'(?P<id>\d+)' ,访问就出错了.

没弄明白<pk>什么东西


suchocolate 发表于 2021-9-30 12:45:58

本帖最后由 suchocolate 于 2021-9-30 13:00 编辑


pk是自定义命名的正则匹配组名,这个组包含1或多数字组成。
具体用法得代码贴全。

z5560636 发表于 2021-9-30 13:06:49

不是很深入,但是可以大概的给你解释一下:
url(r'^post/(?P<pk>\d+)/$'

正则表达式匹配,pk默认的指的是 ORM 里面是 id。

kogawananari 发表于 2021-10-1 13:25:36

pk是PRIMARY KEY的简称
页: [1]
查看完整版本: url(r'^post/(?P<pk>\d+)/$' 这个<pk>什么鬼