【发布时间】:2020-10-31 20:34:48
【问题描述】:
我已将以下路由添加到我的 Django Rest 框架项目中,该 url 匹配良好并返回订单和库存的列表视图,但它与详细视图 order/<int:order_no> 和 inventory/<int:pk> 不匹配
localhost:8000/FD/orders/ 工作但
localhost:8000/FD/order/1/不匹配返回
Using the URLconf defined in FriendsDigital.urls, Django tried these
URL patterns, in this order:
1. admin/
2. ^rest-auth/
3. ^FD/ ^inventories/$ [name='inventory_list']
4. ^FD/ ^inventory/<int:pk>/ [name='inventory_edit']
5. ^FD/ ^orders/ [name='orders_list']
6. ^FD/ ^order/<int:order_no>/ [name='order_update']
The current path, FD/order/1/, didn't match any of these
库存也是同样的问题
网址.py
urlpatterns = [
url('^inventories/$', InventoryList.as_view(), name='inventory_list'),
url('^inventory/<int:pk>/', InventoryRetrieveUpdate.as_view(), name='inventory_edit'),
url('^orders/', BusinessOrderList.as_view(), name='orders_list'),
url('^order/<int:order_no>/',BusinessOrderUpdate.as_view(), name='order_update')
]
views.py
class InventoryList(generics.ListAPIView):
queryset= Inventory.objects.all()
serializer_class = InventorySerializer
class InventoryRetrieveUpdate(generics.RetrieveUpdateAPIView):
queryset = Inventory.objects.all()
serializer_class = InventorySerializer
class BusinessOrderList(generics.ListCreateAPIView):
queryset = BusinessOrder.objects.all()
serializer_class = BusinessOrderSerializer
class BusinessOrderUpdate(generics.RetrieveUpdateAPIView):
queryset = BusinessOrder.objects.all()
serializer_class = BusinessOrderSerializer
Django 版本 - 3.0.7 DjangoRestFramework - 3.11.0
【问题讨论】:
标签: python django django-rest-framework django-urls django-generic-views