框架介绍

为你的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. WCF分布式开发步步为赢(1):WCF分布式框架基础概念

    众所周知,系统间的低耦合一直是大型企业应用系统集成追寻的目标,SOA面向服务架构的出现为我们的如何利用现有企业系统资源进行企业ERP系统设计和实现提供了重要的参考原则.SOA如此炙手可热,各大厂商都推 ...

  2. [转] SAAS, PAAS, IAAS

    SaaS:软件即服务.如CRM.HRM.SCM等等,是可以直接使用的,所以是和多数用户接触最多的一个层面,典型的比如CRM类软件SalesForce. PaaS:平台即服务.如数据挖掘.系统管理.编程 ...

  3. WinForm中DataGridView的使用(六) - 特殊处理的小地方

    列标题不能居中的解决方法 一般列标题的居中我们都使用this.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignmen ...

  4. Web标准及网站的可用性、可访问性

    学习前端的过程中到处充斥着Web标准.可用性.可访问性这些词,那么到底它们指的是什么呢? 一.什么是Web标准 简单的说,Web标准就是我们在学习前端中接触最多的HTML.CSS.JavaScript ...

  5. 类的互相包含------新标准c++程序设计

    #include<iostream> using namespace std; class A; class B{ public: void f(A* pt){}; } class A{ ...

  6. renturn 错误

    package ui.cfg; import java.awt.BorderLayout; import java.awt.FlowLayout; import javax.swing.JButton ...

  7. <id name="ID"> <generator class="assigned" /> </id>

    <generator>表示一个主键的生成机制.即具体通过何种方式来生成.生成方式包括:increment:生成long, short或者int类型的主键,不能在cluster环境下使用.适 ...

  8. IIS只允许某些IP访问

    1. 2. 3.访问时提示 4.设置允许访问的IP 5.指定的IP访问时没问题了,而其他的IP不允许访问

  9. P3615 如厕计划

    $ \color{#0066ff}{ 题目描述 }$ 竞赛比完之后,水箱里充满水的选手们鱼贯而出.凡华中学的厕所规划的很糟,只有两个厕位,于是厕所门前排起了长长的队伍. 厕所有两个,一个是女生专用厕所 ...

  10. tomcat更改web文件路径

    由于代码太长,记不住!只能自己做个小笔记了!! <Context path="/" docBase="/opt/appl/merch.bak" debug ...