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配合使用的更多相关文章
- Django配合使用Jquery post方法
Django使用jQuery的post方法需要解决两个问题: 1.Django中为了防止跨站请求,在post提交时都会带上csrf_token,利用Jquery进行post请求也需要:否则就会出现40 ...
- Django rest_framework快速入门
一.什么是REST 面向资源是REST最明显的特征,资源是一种看待服务器的方式,将服务器看作是由很多离散的资源组成.每个资源是服务器上一个可命名的抽象概念.因为资源是一个抽象的概念,所以它不仅仅能代表 ...
- django添加REST_FRAMEWORK 接口浏览
1.安装rest_framework pip install djangorestframework 2.配置rest_framework ## 将rest_framework加入项目app列表 I ...
- 详解Django rest_framework实现RESTful API
这篇文章主要介绍了详解Django rest_framework实现RESTful API,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随小编过来看看吧 一.什么是REST 面向资源是R ...
- REST_FRAMEWORK加深记忆-加了用户登陆认证,自定义权限的API接口
哈哈,终于快结束了.. urls.py from django.conf.urls import include, url from django.contrib import admin urlpa ...
- Django rest framework 自定义Exception
使用Dango rest framework时,有时需要raise APIException到前端,为了统一错误返回格式,我们需要对exception的格式进行调整. 方法: 1. 在project/ ...
- Python Django rest framework
本节内容 Django rest framework 安装 Django rest framwwork 环境配置 简单举例说明 Django中使用 rest framework 1.1 安装 Djan ...
- Django REST Framework 最佳实践
Django REST framework 是一个强大且灵活的工具包,用以构建Web APIs. 为什么要使用REST framework? - 在线可视的API,对于赢得你的开发者们十分有用 - 验 ...
- Django REST framework框架介绍和基本使用
Django REST framework介绍 Django REST framework是基于Django实现的一个RESTful风格API框架,能够帮助我们快速开发RESTful风格的API. 官 ...
- django遇到的问题-系列1
django开发中遇到的问题以及解决方法: 1.You called this URL via POST, but the URL doesn't end in a slash and you hav ...
随机推荐
- 「C++」复杂模拟【壹】
建议开启目录食用 阅读本文之前建议您先看这里,如果您已经看完了,那么就可以放心大胆的学习本文了. 我认为其实本文的难度还是比较大的,今天我们题是来自山东省省选,所以建议大家谨慎阅读,如果您是专业程序员 ...
- python 将查询到数据,处理成包含列名和数据的字典类型数据
try: self.connect_dbserver() self.cursor.execute(sql) res = self.cursor.fetchall() # 返回的是数组的类型 print ...
- Apache Kylin(一)Kylin介绍
1. 传统大数据分析的问题 在基于Hadoop 生态的传统大数据分析中,主要使用的技术是MPP(Massively Parallel Processing)大规模并行处理和列式存储.MPP使用线性增加 ...
- Gitlab的安装和使用
安装和配置必要的依赖项 yum install dnf sudo dnf install -y curl policycoreutils openssh-server #将SSH服务设置成开机自启动 ...
- 全志科技A40i开发板规格书(四核ARM Cortex-A7,主频1.2GHz)
1.评估板简介 创龙科技TLA40i-EVM是一款基于全志科技A40i处理器设计的4核ARM Cortex-A7高性能低功耗国产评估板,每核主频高达1.2GHz,由核心板和评估底板组成. 评估板接口资 ...
- 我对《RAG/大模型/非结构化数据知识库类产品》技术架构的思考、杂谈
1.前言 在6.28/29的稀土掘金开发者大会RAG专场上,我们公司CEO员外代表TorchV分享了我们在<RAG在企业应用中落地的难点与创新> 其中最后分享了两个观点: AI在应用场景落 ...
- 计算订单签收率的sql查询思路与过程(涉及百分比和四舍五入)
领导提出一个签收率需求,想要通过数据库达到excel中表现的形式,提高计算速度和工作效率, 如下形式: 数据库中表数据结构: 部分数据如下: sql语句思路如下: -- 1.已签收:以物流反馈管道,状 ...
- n阶前缀和 の 拆解
二阶 \[\sum_{i=l}^{r} \sum^{i}_{j=1} a_j \] \[=\sum_{i=l}^{r} (r-i+1) a_i \] \[=(r+1)\sum_{i=l}^{r} a_ ...
- 松灵机器人scout mini小车 自主导航(1)
松灵机器人scout mini小车 自主导航 最近实验室来了个松灵机器人scout mini的底座.本着学习的目的对其进行了研究,从最基础的连接开始. 1.硬件连接准备 松灵scout mini提供了 ...
- oeasy教您玩转linux010210管理应用aptitude
上一部分我们都讲了什么? 下载并运行了 hollywood hollywood 更新了源的信息 sudo apt update 查看所有已经安装的软件包 # dpkg deiban 本地包管理 dpk ...