码迷,mamicode.com
首页 > 其他好文 > 详细

Django REST框架

时间:2017-09-19 22:56:38      阅读:155      评论:0      收藏:0      [点我收藏+]

标签:一个   str   addition   控件   浏览器   define   删除用户   全局   mat   

安装

安装使用pip,包括您想要的任何可选包...

pip install djangorestframework

pip install markdown           # Markdown support for the browsable API.

pip install django-filter        #  Filtering  support

 

添加 ‘rest_framework‘  到你的 INSTALLED_APPS设置

INSTALLED_APPS = (

  ‘rest_framework‘,

)

 

如果您打算使用可浏览的API,您可能还需要添加REST框架的登录和注销视图。将以下内容添加到您的根urls.py文件中。

 

urlpatterns = [

url(r‘^api-auth/‘, include(‘rest_framework.urls, namespace=‘rest_framework‘))

]

请注意,URL路径可以是任何你想要的,但你必须包括‘rest_framework.urls‘‘rest_framework‘命名空间。您可以在Django 1.9+中省略命名空间,REST框架将为您设置。

 

我们来看一下使用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‘
    ]
}

不要忘了确保你也添加rest_framework到你的INSTALLED_APPS

我们已经准备好创建我们的API了。这是我们项目的根urls.py模块:

from django.conf.urls import url, include
from django.contrib.auth.models import User
from rest_framework import routers, serializers, viewsets

# Serializers define the API representation.
class UserSerializer(serializers.HyperlinkedModelSerializer):
    class Meta:
        model = User
        fields = (‘url‘, ‘username‘, ‘email‘, ‘is_staff‘)

# ViewSets define the view behavior.
class UserViewSet(viewsets.ModelViewSet):
    queryset = User.objects.all()
    serializer_class = UserSerializer

# Routers provide an easy way of automatically determining the URL conf.
router = routers.DefaultRouter()
router.register(r‘users‘, UserViewSet)

# Wire up our API using automatic URL routing.
# Additionally, we include login URLs for the browsable API.
urlpatterns = [
    url(r‘^‘, include(router.urls)),
    url(r‘^api-auth/‘, include(‘rest_framework.urls‘, namespace=‘rest_framework‘))
]

您现在可以在浏览器中http://code.google.com/support/zh-cn/zh-cn http://127.0.0.1:8000/打开API ,并查看新的“用户”API。如果您使用右上角的登录控件,您还可以从系统添加,创建和删除用户。

 

Django REST框架

标签:一个   str   addition   控件   浏览器   define   删除用户   全局   mat   

原文地址:http://www.cnblogs.com/chenyang13677/p/7554074.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!