我尝试创建rest api,但却停留在生成url上 .
urlpatterns = [
path('admin/', admin.site.urls),
url(r'^api/shop/', include(('shop.api.urls', 'shop'), namespace='api-shop',)), ]
也尝试过
path('api/shop/', include(('shop.api.urls', 'shop'), namespace='api-shop',)),
在shop / api / urls.py我写道
urlpatterns = [
url(r'^(P<id>\d+)/$', ShopRudView.as_view(), name='shop-rud')
]
并在shop / api / views.py中使用drf库泛型视图来创建
class ShopRudView(generics.RetrieveUpdateDestroyAPIView):
lookup_field = 'id'
serializer_class = ShopSerializer
def get_queryset(self):
return Shop.objects.all()
当我进入http://127.0.0.1:8000/api/shop/1我得到
在untitled1.urls中定义的URLconf中,Django按以下顺序尝试了这些URL模式:admin / shop / ^ api / shop / ^(P \ d)/ $ [name ='shop-rud']当前路径,api / shop / 1,与这些中的任何一个都不匹配 .
如何解决?
1 回答
您在正则表达式中缺少
?
:或者,如果您想使用
path
: