Django的RestfulAPI框架RestFramework
Django的Restful-API框架
安装框架
#sudo pip3 install django
#sudo pip3 install markdown
#sudo pip3 install djangorestframework
启动项目
#django-admin.py startproject MyRestSite
#cd MyRestSite
#python manage.py makemigrations
#python manage.py migrate
#python manage.py createsuperuser
配置文件settings.py
# Application definition
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'rest_framework',
)
REST_FRAMEWORK = {
'DEFAULT_PERMISSION_CLASSES': [
'rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly'
]
}
编写模型
models.py
class TableName(models.Model):
xxx = xxxx(xxx=xxx)
class Meta:
xxxxxxx
模型序列化
serializers.py
from rest_framework import serializers
class TableNameSerializer(serializers.ModelSerializer):
class Meta:
model = TableName
fields = ('xxxx', 'xxxxx', 'xxxx', 'xxxxx')
视图路由
views.py
from rest_framework.renderers import JSONRenderer
from rest_framework import serializers
class JSONResponse(HttpResponse):
"""
用于返回JSON数据.
"""
def __init__(self, data, **kwargs):
content = JSONRenderer().render(data)
kwargs['content_type'] = 'application/json'
content='{"xxxxx":'+content+'}'
super(JSONResponse, self).__init__(content, **kwargs)
@csrf_exempt
def xxxxxxxxx(request,xxxxxxxxxx):
if request.method == 'GET':
...
return JSONResponse(serializer.data)
路由转发
urlpatterns = [
...
url(r'^api/x/xxxxx/xxxxx$', xxxxxxxs),
]
测试运行
#python3 ./manage.py runserver
# curl -H 'Accept: application/json; indent=4' -u username:password http://127.0.0.1:8000/apiurls/

Django的RestfulAPI框架RestFramework的更多相关文章
- Django Rest framework 框架之认证使用和源码执行流程
用这个框架需要先安装: pip3 install djangorestframework 如果写了一个CBV的东西,继承了View. # 继承Django里面View class APIView(Vi ...
- web前端Vue+Django rest framework 框架 生鲜电商项目实战视频教程 ☝☝☝
web前端Vue+Django rest framework 框架 生鲜电商项目实战视频教程 web前端Vue+Django rest framework 框架 生鲜电商项目实战视频教程 学习 ...
- Django REST framework框架介绍和基本使用
Django REST framework介绍 Django REST framework是基于Django实现的一个RESTful风格API框架,能够帮助我们快速开发RESTful风格的API. 官 ...
- Web框架本质及第一个Django实例 Web框架
Web框架本质及第一个Django实例 Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web ...
- Django 前端Wbe框架
Web框架本质及第一个Django实例 Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端. 这样我们就可以自己实现Web ...
- 写写Django中DRF框架概述以及序列化器对象serializer的构造方法以及使用
写写Django中DRF框架概述以及序列化器对象serializer的构造方法以及使用 一.了解什么是DRF DRF: Django REST framework Django REST framew ...
- Django学习---Web框架及基础知识
Django学习---Web框架 web框架的本质 我们在学socket,我们创建一个socketserver,然后运行起来,有一个client客户端要连接socket服务端,连接上之后,如果两边都没 ...
- Django Rest Framework框架 ---- url控制器
Django Rest Framework框架 ---- url控制器
- 真正搞明白Python中Django和Flask框架的区别
在谈Python中Django框架和Flask框架的区别之前,我们需要先探讨如下几个问题. 一.为什么要使用框架? 为了更好地阐述这个问题,我们把开发一个应用的过程进行类比,往往开发一个应用(web应 ...
随机推荐
- Css 去除浮动
清除浮动的方法 清除浮动方法大致有两类,一类是clear:both | left | right ,另一类则是创建BFC,细分又可以分为多种. 通过在浮动元素末尾添加一个空的标签例如并设置样式为cle ...
- SQLSERVER 2008 技术内幕 T-SQL查询 笔记1: SQL 执行顺序
与大多数语言一样,SQL语言也有一个执行顺序,只是在大多数编程语言中,代码是按照编写顺序来处理的,而在SQL中则不是,下图为SQL 执行顺序. () ) [ ALL | DISTINCT ] () [ ...
- 无插件用Terminal/TotalTerminal的开当前finder位置
从win7开始,在资源管理器内按住shift再右键,是可以选择“在当前位置打开命令行”的,相当有用,这个命令在mac下是如何实现的呢? 前提:我讲的是TotalTerminal下的方案,原生的term ...
- react-router实现tab页面切换,并解决选中样式首页始终选中问题
import React, {Component} from 'react'; import { BrowserRouter as Router, Route, NavLink } from &quo ...
- vue学习起步,vue环境安装
vue安装的前提是安装了nodejs 安装淘宝镜像 npm install -g cnpm --registry=https://registry.npm.taobao.org 安装webpack c ...
- koa-route模块
const Koa = require('koa'); const route = require('koa-route'); const app = new Koa(); const about = ...
- ubuntu-12.04.5-desktop-i386.iso:ubuntu-12.04.5-desktop-i386:安装Oracle11gR2
ubuntu 桌面版的安装不介绍. 如何安装oracle:核心步骤和关键点. ln -sf /bin/bash /bin/sh ln -sf /usr/bin/basename /bin/basena ...
- 在ABBYY中如何修正倾斜的PDF页面
作为一名文案工作者,每天都要跟各种PDF文件打交道,合同.报价单.协议书等等等,通常提供给客户的都是扫描之后的PDF文档,虽说都是机器扫描,但毕竟是人为放置的,难免位置放置不齐,导致扫描出来的文档出现 ...
- 将windbg设置为默认调试器命令
前提条件:安装好windbg软件(默认安装位置) 以截取组态王运行系统崩溃为例: 64位系统0.文件更新替换 将Touchvew.exe以及Touchvew.pdb覆盖替换C:\Program Fil ...
- mysql 连接字符串 CONCAT
以前用SQL Server 连接字符串是用“+”,现在数据库用mysql,写个累加两个字段值SQL语句居然不支持"+",郁闷了半天在网上查下,才知道mysql里的+是数字相加的操作 ...