Django REST framework笔记一之简易JsonAPI搭建(可使用)
来源:互联网 发布:steam中mac游戏 编辑:程序博客网 时间:2024/06/14 07:54
参考
Django rest framework官网http://www.django-rest-framework.org/
文章可能有疏漏,具体请参考代码
源码地址 github:https://github.com/luojie1024/Django_Rest_Framework_Demo
本文需要有一定的Python和Django基础,需要预先安装Ubantu及其相关配置。
创建虚拟环境
//创建虚拟环境文件夹mkdir tutorialcd tutorial//创建虚拟环境(方便后期部署)virtualenv envsource env/bin/activate # On Windows use `env\Scripts\activate`//安装Django和restframework框架virtualenvpip install djangopip install djangorestframework
安装mysql数据库
//没有安装的话迁移会出错pip install mysqlclientsudo apt-get install python3-dev libmysqlclient-dev
进入虚拟环境
joahluo@ubuntu:~/tutorial/env/local/bin$ source activate
创建应用(创建项目文件夹,进入文件夹)
本例在projecet07文件夹下创建项目
//创建项目django-admin.py startproject turorialcd tutorial
//代码运行之后创建APP snippetsdjango-admin.py startapp snippets
创建一个空的mysql数据库
mysql> create database restframework charset=utf8;
使用Pycharm打开自己的项目
在turorial/setting.py下加入APP,并且设置自己的数据库
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'snippets', 'rest_framework',]
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'restframework', 'PORT': '3306', 'HOST': 'localhost', 'USER': 'luojie', 'PASSWORD': '123456', }}
在turorial/urls.py中配置url
from django.conf.urls import include, urlfrom django.contrib import adminfrom rest_framework import routersfrom snippets import apirouter = routers.DefaultRouter()router.register(r'users', api.UserViewSet)router.register(r'blogs', api.BlogViewSet)urlpatterns = [ url(r'^admin/', include(admin.site.urls)), url(r'^', include(router.urls)),]
在snippet/models.py下配置相应的models
本例以blog做演示
from django.db import models# Create your models here.class Blog(models.Model): title = models.CharField(max_length = 50 ) content = models.TextField()
在snippets 下创建api.py文件
from django.contrib.auth.models import Userfrom rest_framework import routers, serializers, viewsetsfrom snippets import modelsfrom rest_framework import responseclass UserSerializer(serializers.HyperlinkedModelSerializer): class Meta: model = User fields = ('url','username','email','is_staff')class UserViewSet(viewsets.ModelViewSet): queryset = User.objects.all() serializer_class = UserSerializerclass BlogSerializer(serializers.HyperlinkedModelSerializer): class Meta: model = models.Blog depth = 1 fields = ('url','title','content',)class BlogViewSet(viewsets.ModelViewSet): queryset = models.Blog.objects.all() serializer_class = BlogSerializer
生成迁移文件,并且完成迁移
python manage.py makemigrationspython manage.py migrate
在数据库中添加测试数据
运行服务器
python manage.py runserver
进入到项目目录,运行服务
进入页面,选中blog api
接下来我们看到了我们在数据库中添加的数据所生成的Json
本例中使用的虚拟环境配置
阅读全文
1 0
- Django REST framework笔记一之简易JsonAPI搭建(可使用)
- Django REST Framework(一) 初步使用
- Django.Rest.Framework搭建测试
- django学习笔记一:搭建简易博客
- Django Rest Framework(一)
- Django Rest framework学习(一)
- Django rest framework 学习笔记
- django-rest-framework序列化的使用(一)
- Django REST framework使用案例
- django rest framework使用django-filter
- Django REST framework教程一:序列化
- Django REST framework(官方教程之四)
- Django rest framework 使用自定义认证方式
- django-rest-framework过滤器的使用(三)
- Django笔记 Django REST Framework实现Web API 1
- Django笔记 Django REST framework的Serializer 2
- Django REST framework
- Django REST framework API
- 使用ResourceBundle加载properties文件
- 自动监控并重启服务supervise
- AudioFlinger 源码解析
- Android 简单实现Activity界面变暗效果
- Maven发布工程到私服和JUnit的安装使用
- Django REST framework笔记一之简易JsonAPI搭建(可使用)
- 反转整数
- HDU1272 DFS 连通无环图的性质
- 兔子你好
- MMDB ip地址库操作
- hibernate的双数据源的配置
- HashMap与HashTable
- Kafka 基本原理
- NYOJ STL练习 习题汇总