2

我有一个 ViewSet 定义为

class ItemViewSet(viewsets.ModelViewSet):
    queryset = Item.objects.all()
    serializer_class = ItemSerializer

并将我的网址定义为

router = routers.DefaultRouter()

router.register(r'items', ItemViewSet)

urlpatterns = patterns('',
    url(r'^api/', include(router.urls)),

可浏览的 API 工作正常。

我想用 $.ajax() 读取和发送 json。我怎样才能使用我的 ViewSet 来做到这一点?我可以用类似的东西检索我的所有项目,$.ajax({url: '/api/items/'})但我不想硬编码网址。如果我想编辑特定项目怎么办?当我没有保存页面的命名网址时,我该怎么办?

4

1 回答 1

1

阅读有关路由器的 DRF 文档

简单地说,你有:

GET     /api/items/     #list the items
POST    /api/items/     #create new item
GET     /api/items/1/   #detail info about item with id=1
PUT     /api/items/1/   #update item with id=1
PATCH   /api/items/1/   #partial-update item with id=1
DELETE  /api/items/1/   #delete item with id=1
于 2015-03-18T20:09:58.193 回答