rest_framework与django配合使用

rest_framework与django配合使用
 

一、构建表单,在这里我们先构建五个表单,分别是 author book publish user token 后面将会一一用到,如下:

models.py

from django.db import models

# Create your models here.

class User(models.Model):
username = models.CharField(max_length=32)
password = models.CharField(max_length=32)
type_choice = ((1,"普通用户"),(2,"VIP"),(4,"SVIP"))
user_type = models.IntegerField(choices=type_choice, default=1) def __str__(self):
return self.username class Token(models.Model):
user = models.OneToOneField("User")
token = models.CharField(max_length=128) def __str__(self):
return self.token class Author(models.Model):
name = models.CharField(max_length=16)
age = models.CharField(max_length=16) def __str__(self):
return self.name class Publish(models.Model):
title = models.CharField(max_length=32)
email = models.EmailField() def __str__(self):
return self.title class Book(models.Model):
title = models.CharField(max_length=64)
price = models.IntegerField()
authors = models.ForeignKey(to="Author")
publish = models.ForeignKey(to="Publish") def __str__(self):
return self.title

二、对admin组件进行注册,利用admin来录入数据

admin.py

from django.contrib import admin
from app01.models import *
# Register your models here. admin.site.register(Book)
admin.site.register(Author)
admin.site.register(Publish)
admin.site.register(User)

三、rest-framework的用法:

1、首先得写好序列化组件:在app01的根目录下面创建一个serializer.py 用来存放每一个组的序列化组件,组件如下:

from rest_framework import serializers
from app01.models import * class PublishModelSerializers(serializers.ModelSerializer):
class Meta:
model = Publish
fields = "__all__" class BookModelSerializers(serializers.ModelSerializer):
class Meta:
model = Book
fields = "__all__" class AuthorModelSerializers(serializers.ModelSerializer):
class Meta:
model = Author
fields = "__all__"

2、写好序列化组件之后就可以操作视图Views.py 了,操作如下:

from rest_framework import viewsets
from app01.models import *
from app01.serializer import *
# Create your views here. class AuthorModelView(viewsets.ModelViewSet):
queryset = Author.objects.all()
serializer_class = AuthorModelSerializers class BookModelView(viewsets.ModelViewSet):
queryset = Book.objects.all()
serializer_class = BookModelSerializers class PublishModelView(viewsets.ModelViewSet):
queryset = Publish.objects.all()
serializer_class = PublishModelSerializers

3、写完了视图后就可以开始写最主要的url部分了!

from django.conf.urls import url,include
from django.contrib import admin
from rest_framework import routers
from app01 import views router = routers.DefaultRouter()
router.register("author",views.AuthorModelView) urlpatterns = [
url(r'^admin/', admin.site.urls), url(r'', include(router.urls)) ]

4、好了,这里就只需要在 Postman 里面输入url了,大功告成!

rest_framework与django配合使用的更多相关文章

  1. Django配合使用Jquery post方法

    Django使用jQuery的post方法需要解决两个问题: 1.Django中为了防止跨站请求,在post提交时都会带上csrf_token,利用Jquery进行post请求也需要:否则就会出现40 ...

  2. Django rest_framework快速入门

    一.什么是REST 面向资源是REST最明显的特征,资源是一种看待服务器的方式,将服务器看作是由很多离散的资源组成.每个资源是服务器上一个可命名的抽象概念.因为资源是一个抽象的概念,所以它不仅仅能代表 ...

  3. django添加REST_FRAMEWORK 接口浏览

    1.安装rest_framework pip install djangorestframework  2.配置rest_framework ## 将rest_framework加入项目app列表 I ...

  4. 详解Django rest_framework实现RESTful API

    这篇文章主要介绍了详解Django rest_framework实现RESTful API,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随小编过来看看吧 一.什么是REST 面向资源是R ...

  5. REST_FRAMEWORK加深记忆-加了用户登陆认证,自定义权限的API接口

    哈哈,终于快结束了.. urls.py from django.conf.urls import include, url from django.contrib import admin urlpa ...

  6. Django rest framework 自定义Exception

    使用Dango rest framework时,有时需要raise APIException到前端,为了统一错误返回格式,我们需要对exception的格式进行调整. 方法: 1. 在project/ ...

  7. Python Django rest framework

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

  8. Django REST Framework 最佳实践

    Django REST framework 是一个强大且灵活的工具包,用以构建Web APIs. 为什么要使用REST framework? - 在线可视的API,对于赢得你的开发者们十分有用 - 验 ...

  9. Django REST framework框架介绍和基本使用

    Django REST framework介绍 Django REST framework是基于Django实现的一个RESTful风格API框架,能够帮助我们快速开发RESTful风格的API. 官 ...

  10. django遇到的问题-系列1

    django开发中遇到的问题以及解决方法: 1.You called this URL via POST, but the URL doesn't end in a slash and you hav ...

随机推荐

  1. 3D捕鱼大富翁源码分析

    ​ 今天接受了一个捕鱼的源码,技术栈采用: 客户端:Unity 服务端:Java 数据库:mysql 缓存:redis 先来几张成品图 ​编辑​编辑 ​编辑​编辑 ​编辑 在代码中看到有腾讯推广渠道, ...

  2. 云服务器通过内网穿透的方式ssh访问内网服务器

    云服务器通过内网穿透的方式ssh访问内网服务器 背景 买了一台云服务器,了解到可以通过外部服务器连接到公司内部服务器. 为了加快办公的效率,配置了一下. 以Ubuntu为例. 原文(有删改):http ...

  3. 全新 UI 震撼来袭!ng-matero v18 正式发布!

    前言 断断续续折腾了近两周,ng-matero v18 终于发布了.其中最大的亮点是启用 Material 3 主题以及全新的 UI 设计.特别说明,这是 ng-matero 发布五年以来首次 UI ...

  4. ubuntu16.04 安装 eclips c/c++

    前言 最近需要在ubuntu16上使用eclips编译c,尝试了apt安装和官网最新包安装甚至应用商店安装,效果都不太理想,现在把我的安装方法记录一下. 正文 !!!前提,已经自己配置好了java8的 ...

  5. ComfyUI进阶篇:ComfyUI核心节点(二)

    ComfyUI核心节点(二) 前言: 学习ComfyUI是一场持久战.当你掌握了ComfyUI的安装和运行之后,会发现大量五花八门的节点.面对各种各样的工作流和复杂的节点种类,可能会让人感到不知所措. ...

  6. VulnHub_DC-5渗透流程

    DC-5 主机探测 nmap 192.168.157.0/24 访问网站 探测网站得知是Nginx 目录扫描 在Contact处可以提交东西,抓个包,发现在thankyou.php界面时间年份会变,应 ...

  7. SpringBoot实现Mysql读写分离

    前言 在高并发的场景中,关于数据库都有哪些优化的手段? 常用的有以下的实现方法:读写分离.加缓存.主从架构集群.分库分表等,在互联网应用中,大部分都是读多写少的场景,设置两个库,主库和读库. 主库的职 ...

  8. Odoo17.0 基于企业微信的备用金和费用报销

    前面讲过了企业微信的基础应用,现在我们来看一下如何借助企业微信的审批端能力结合odoo来实现企业中的两大常规业务流程备用金和费用报销. 企业微信端设置 我们这里使用的是企业微信的原生审批流程,因此我们 ...

  9. C# 泛型单例工厂

    核心代码,线程安全 class SingletonFactory<T> where T : new() { private static T uniqueInstance; private ...

  10. Python 按规则解析并替换字符串中的变量及函数

    按规则解析并替换字符串中的变量及函数 需求 1.按照一定规则解析字符串中的函数.变量表达式,并替换这些表达式.这些函数表达式可能包含其它函数表达式,即支持函数嵌套 2.函数表达式格式:${ __函数名 ...