框架介绍

为你的django平台通过model生成对应的restfull api,并可以通过对应的http接口来进行 post 、get、put、delete等操作。本文是也并非入门级别,不会带你去了解框架自身,而是直接告诉你怎么做可以快速达到目的。

安装

pip install django-rest-framework

设置

如果你还没有django的项目,那么你得先安装django并创建一个django项目,并创建数据库表。
1.如果已有项目可以直接配setting文件 在setting.py 中添加的 rest_framework

INSTALLED_APPS =(
...
'autoplat',
'rest_framework',
)

2.创建用于数据序列化的代码:
在自己的APP目录中创建autoplat/serializers.py文件

from rest_framework import serializers
from autoplat.models import*
classProductSerializer(serializers.HyperlinkedModelSerializer):
classMeta:
model =Product
fields =('id','name','isenabled','descr')
classProjectSerializer(serializers.HyperlinkedModelSerializer):
classMeta:
model =Project
fields =('id','name','isenabled','descr','productid')
classModuleSerializer(serializers.HyperlinkedModelSerializer):
classMeta:
model =Module
fields =('id','name','isenabled','projectid')

3.定义Views.py

from autoplat.forms import*
from rest_framework import viewsets
from autoplat.serializers import
classProductViewSet(viewsets.ModelViewSet):
"""
定义允许查看和编辑Product API
"""
queryset =Product.objects.all()
serializer_class =ProductSerializer
classProjectViewSet(viewsets.ModelViewSet):
"""
定义允许查看和编辑Project API
"""
queryset =Project.objects.all()
serializer_class =ProjectSerializer
classModuleViewSet(viewsets.ModelViewSet):
"""
定义允许查看和编辑Module API
"""
queryset =Module.objects.all()
serializer_class =ModuleSerializer

4.设置访问Urls.py
通过框架中的routers自动生成api 对应的url

from django.conf.urls import patterns, url, include
from rest_framework import routers
from autoplat import views
router = routers.DefaultRouter()
router.register(r'product', views.ProductViewSet)
router.register(r'project', views.ProjectViewSet)
router.register(r'module', views.ModuleViewSet)
urlpatterns =[
url(r'^api/', include(router.urls)),
url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework'))
]

配置基本完成,启动server进行访问测试

http://127.0.0.1/api/ 出现下面类似页面则配置成功
图1首页

图2 具体接口操作

官网链接

121、Django rest framework入门使用的更多相关文章

  1. django rest framework 入门

    django rest framework 入门1-序列化 Serialization 分类: Python 2013-01-22 22:24 11528人阅读 评论(0) 收藏 举报 djangop ...

  2. Django REST framework入门 (转自中文文档)

    快速入门 我们将创建一个简单的允许管理员用户查看和编辑系统中的用户和组的API. 项目设置 创建一个名为 tutorial 的新django项目,然后启动一个名为 quickstart 的新app. ...

  3. Django REST framework快速入门指南

    项目设置 创建一个名为tutorial的新Django项目,然后开始一个名为quickstart的新应用程序. # Create the project directory mkdir tutoria ...

  4. Django REST Framework简单入门(一)

    Django REST Framework(简称DRF),是一个用于构建Web API的强大且灵活的工具包. REST这个词,是Roy Thomas Fielding在他2000年的博士论文中提出的. ...

  5. Django REST framework快速入门(官方文档翻译翻译)

    开始 我们将创建一个简单的API来允许管理员用户查看和编辑系统中的用户和组. 项目设置 创建一个新的django项目,命名为:<tutorial>,然后创建一个新的应用程序(app),命名 ...

  6. Django REST framework完全入门

    Django REST framework 一个强大灵活的Django工具包,提供了便捷的 REST API 开发框架 我们用传统的django也可以实现REST风格的api,但是顶不住Django ...

  7. 用Django Rest Framework和AngularJS开始你的项目

    Reference: http://blog.csdn.net/seele52/article/details/14105445 译序:虽然本文号称是"hello world式的教程&quo ...

  8. Django REST framework 中文教程1:序列化

    建立环境 在我们做任何事情之前,我们将使用virtualenv创建一个新的虚拟环境.这将确保我们的包配置与我们正在开展的任何其他项目保持良好的隔离. virtualenv envsource env/ ...

  9. Python Django rest framework

    本节内容 Django rest framework 安装 Django rest framwwork 环境配置 简单举例说明 Django中使用 rest framework 1.1 安装 Djan ...

随机推荐

  1. [.net 多线程]ThreadPool的安全机制

    ThreadPool类,有两个方法我们没有用到,UnsafeQueueUserWorkItem 和UnsafeRegisterWaitForSingleObject. 为了完全理解这些方法,首先,我们 ...

  2. WPF程序开机速度策略

    WPF程序开机速度慢是一个很讨厌的问题.具体分析后,可能有以下问题 1.在主线程中加载图像导致 2.初始化各种UserControl导致 3.加载类库导致

  3. 三、SpringBoot-application.properties配置文件和application.yml配置文件

    其实SpringBoot的配置文件有.properties和.yml两种形式,两种配置文件的效果类似,只不过是格式不同而已,孩儿们可以根据下面这几种张截图,通过对比端口号的配置,以及连接SQLServ ...

  4. 《C#多线程编程实战》2.6 ManualResetEventSlim

    这个比较好理解的. 正如书上所言,如同一直在打开的大门的屋子,谁要进去,谁就自己的关门,出来的时候在开开. 常用的方法 有三个: Set()  //设置为有信号,也就是让等待的线程不用继续等待,唤醒等 ...

  5. 深度学习之 TensorFlow(五):mnist 的 Alexnet 实现

    尝试用 Alexnet 来构建一个网络模型,并使用 mnist 数据查看训练结果. 我们将代码实现分为三个过程,加载数据.定义网络模型.训练数据和评估模型. 实现代码如下: #-*- coding:u ...

  6. 八大排序算法的python实现(四)快速排序

    代码: #coding:utf-8 #author:徐卜灵 #交换排序.快速排序 # 虽然快速排序称为分治法,但分治法这三个字显然无法很好的概括快速排序的全部步骤.因此我的对快速排序作了进一步的说明: ...

  7. CF914E Palindromes in a Tree

    $ \color{#0066ff}{ 题目描述 }$ 给你一颗 n 个顶点的树(连通无环图).顶点从 1 到 n 编号,并且每个顶点对应一个在'a'到't'的字母. 树上的一条路径是回文是指至少有一个 ...

  8. c语言数据结构学习心得——线性表

    线性表:具有相同数据类型的n(n>0)个数据元素的有限序列. 主要有顺序存储和链式存储. 顺序存储: 特点:地址连续,随机/存取,顺序存储. 建立:首地址/存储空间大小(数组),表长. 方式:静 ...

  9. 在VS 2012或2013中使用WSE

    1,首先下载 WSE http://www.microsoft.com/en-us/download/confirmation.aspx?id=14089 2,安装的时候选上, 3,C:\Progra ...

  10. kibana安装汉化包

    kibana安装汉化包其实很简单!但要找到汉化包可能就很麻烦了.我这里提供了6.2的版本的汉化包!至于能不能在其他版本用,我就没试过了.但6.2的kibana本人亲测.没问题!!!! 下载——解压.这 ...