drf api actions for django
Project description
提供django下rest framework的coreapi便捷调用
Quick start
Install:
pip install drf_api_actions
[Optional] Include the drf_api_actions URLconf in your project urls.py like this:
if settings.DEBUG: urlpatterns += [ url('^', include('drf_api_actions.urls')) ] # after add this you can visit: /docs /schema /api.js
No migrate needed:
Sample:
# Add "sample" to your INSTALLED_APPS setting like this :: INSTALLED_APPS = [ ... 'sample', ] # Include the sample URLconf in your project urls.py like this:: urlpatterns += [ url('^', include('sample.urls')) ] # Run server and visit /docs /schema /api.js
Examples:
# Views class UsersAPIView(APIView): """ 获得用户列表 返回值:用户列表 `['a', 'b', ...]` """ def get(self, request): return Response(['a', 'b']) class UsersActionReadAPIView(ActionReadMixin, APIView): """ 获得用户列表, 用了`ActionReadMixin`后这是一个用 Read 返回值:用户列表 `['a', 'b', ...]` """ def get(self, request): return Response(['a', 'b']) class UsersExtraFieldsAPIView(APIView): """ 获得用户列表, 带user_id/user_name会过滤 返回值: - 带user_id: `['a']` - 不带user_id: `['a','b']` """ extra_fields = [ coreapi.Field(name='user_id', location='query', required=False, schema=coreschema.String(description='用户id')) ] def get(self, request): user_id = request.GET.get('user_id', '') if user_id: return Response(['a']) else: return Response(['a', 'b']) # Url settings url('^docs/', Views.docs_as_view(title='API')) url('^schema/', Views.schema_as_view(title='API')) url('^api.js', Views.api_js_as_view(title='API'))
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
drf-api-actions-0.2.0.tar.gz
(8.0 kB
view hashes)