django rest framework 再撸体验
曾经了解过。
放在一边,嫌麻烦。
如今身为leader,站在团队沟通的角度看看,还不错。
有几个优点:
1. api一览表
2. api web预览界面(类似.net的webservice预览界面),可以直接在上面(类似postman的方式)模拟和服务器的通讯。
3. api的配置化,通用性的查增删改无脑解决方案。复杂的api可能还是要自己写。
4. 测试也比较方便,由于可以web预览,因此剩下了用curl/httpie脚本测试。降低了测试门槛。
然而通用的能解决80%的问题,省下80%的时间来对付那20%棘手的问题。
教程:
1. 稍后完善,先可以自己看看官方英文文档:http://www.django-rest-framework.org/#tutorial
常识:
1. 数据的读取:
GET - request.query_params
其他- request.data
2.条件过滤:重写get_queryset方法。 默认没有支持模糊查询。可以配置web搜索预览, 不过只能支持精确搜索(django版本1.9.5)。
参考:http://www.django-rest-framework.org/api-guide/filtering/#generic-filtering
爬过的坑:
1. queryset缓存(其实跟django有关)。 解决方案:http://stackoverflow.com/questions/32696820/how-to-disable-django-rest-framework-caching