基于 Django REST framework 3.6.2 文档的学习(1)—— 基本介绍
来源:互联网 发布:uv胶多少钱淘宝 编辑:程序博客网 时间:2024/06/14 05:20
Django REST框架
是构建Web API
的强大而灵活的工具包。
您可能希望使用REST框架的一些原因:
- Web浏览的API是您的开发人员的巨大的可用性胜利。
- 验证策略包括OAuth1a和OAuth2的包。
- 支持ORM和非ORM数据源的序列化。
- 如果不需要功能更强大的功能,可以自定义一切 - 只需使用基于功能的常规视图。
- 广泛的文档和极好的社区支持。
- 由Mozilla,Red Hat,Heroku和Eventbrite等国际知名公司使用和信赖。
Requirements
REST框架需要以下内容:
- Python(2.7,3.2,3.3,3.4,3.5)
- Django(1.8,1.9,1.10)
以下软件包是可选的:
- coreapi(1.32.0+) - 支持模式生成。
- Markdown(2.1.0+) - 可浏览API的Markdown支持。
- django-filter(1.0.1+) - 过滤支持。
- django-crispy-forms - 改进的HTML显示过滤。
- django-guardian(1.1.1+) - 对象级权限支持。
Installation
Install using pip, including any optional packages you want…
pip install djangorestframeworkpip install markdown # Markdown support for the browsable API.pip install django-filter # Filtering support
Add'rest_framework'
to your INSTALLED_APPS
setting.
INSTALLED_APPS = ( ... 'rest_framework',)
如果您打算使用可浏览的API,您可能还需要添加REST框架的登录和注销视图。 将以下内容添加到您的根urls.py
文件中。
urlpatterns = [ ... url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework'))]
请注意,URL路径可以是任何您想要的,但您必须在rest_framework
的命名空间中包含“rest_framework.urls”
。 您可以在Django 1.9+中省略命名空间,REST框架将为您设置。
Example
我们来看一下使用REST框架构建一个简单的模型支持的API的一个简单例子。
我们将创建一个读写API来访问我们项目用户的信息。
REST框架API的任何全局设置都保存在名为REST_FRAMEWORK
的单个配置字典中。 首先将以下内容添加到settings.py
模块中:
REST_FRAMEWORK = { # Use Django's standard `django.contrib.auth` permissions, # or allow read-only access for unauthenticated users. 'DEFAULT_PERMISSION_CLASSES': [ 'rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly' ]}
不要忘了确保你还在你的INSTALLED_APPS
中添加了rest_framework
。
我们已经准备好创建我们的API了。 这是我们项目的根urls.py模块:
from django.conf.urls import url, includefrom django.contrib.auth.models import Userfrom rest_framework import routers, serializers, viewsets#Serializers定义API表示。class UserSerializer(serializers.HyperlinkedModelSerializer): class Meta: model = User fields = ('url', 'username', 'email', 'is_staff')#ViewSets定义视图行为。class UserViewSet(viewsets.ModelViewSet): queryset = User.objects.all() serializer_class = UserSerializer#路由器提供了一种自动确定URL conf的简单方法。router = routers.DefaultRouter()router.register(r'users', UserViewSet)#使用自动网址路由连接我们的API。# 另外,我们还包括可浏览的API的登录URL。urlpatterns = [ url(r'^', include(router.urls)), url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework'))
您现在可以在http://127.0.0.1:8000/
浏览器中打开该API,并查看新的“用户”API。 如果您使用右上角的登录控件,您还可以从系统添加,创建和删除用户。
0 0
- 基于 Django REST framework 3.6.2 文档的学习(1)—— 基本介绍
- django-rest-framework介绍
- Django Rest framework-学习
- python django rest framework Serialization 的学习
- Django-rest-framework学习(-)Serialization
- Django Rest framework学习(一)
- Django rest framework 学习笔记
- Django REST framework教程三: 基于类的视图
- Django REST FrameWork中文教程3:基于类的视图
- django rest framework 入门2——Request and Response
- django rest framework 入门2——Request and Response
- django rest framework 入门2——Request and Response
- django rest framework--quickstart[中文文档]
- Django笔记 Django REST framework的Serializer 2
- django Rest Framework 系列 1
- Django Rest Framework(一)
- 基于 Django1.10 文档的深入学习(11)—— django.shortcuts 之 render()
- 基于 Django1.10 文档的深入学习(12)—— django.shortcuts 之 redirect()
- 中超赛程分析(6)--“蛇形排阵”评价指标
- jQuery中的几个案例:隔行变色、复选框全选和全不选
- c++链接时,无法解析的外部符号 _GdipAlloc等一系列报错
- int转换成String
- 1101. Quick Sort 解析
- 基于 Django REST framework 3.6.2 文档的学习(1)—— 基本介绍
- 关于解决Eclipse报错“Path must include project and resource name:xxx.xxx”的方式
- 二分贪心 T
- Tomcat无法打开阿帕奇主页404错误、搭建文件服务器问题解决方法
- 数据分析2017系统系统设计架构师的通过人数与通过率
- mac如何设置NDK路径
- Codeforces Round #406 (Div. 2) C 博弈
- 复习之路
- 超简单BeautifulSoup版Csdn博客(摘要视图)爬虫