一、安装:

pip install djangorestframework

安装djangorestframework库

https://github.com/encode/django-rest-framework/tree/master

GitHub主页

pip install markdown

安装markdown库

二、配置demo/settings.py:

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'product.apps.ProductConfig', 'xadmin',
'crispy_forms',
'reversion',
# 添加django-xadmin 'import_export',
# 导入导出 'ckeditor',
'ckeditor_uploader',
# 富文本编辑器 'stdimage',
# django-stdimage 'rest_framework',
# django-rest-framework
]

REST_FRAMEWORK = {
'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.PageNumberPagination',
'PAGE_SIZE': 5
# 分页
}

三、复制资源文件:

python manage.py collectstatic

拷贝静态文件

此时可看到static目录下新增了static/rest_framework目录

四、序列化:

在product目录下面新建product/serializers.py:

from rest_framework import serializers

from product.models import ProductInfo

class ProductInfoSerializer(serializers.HyperlinkedModelSerializer):
# 序列化 class Meta:
model = ProductInfo
fields = (
'id',
'product_name',
'product_picture',
'product_describe',
'product_manager',
'product_detail',
'create_time',
'update_time'
)

五、业务视图product/views.py:

# Create your views here.
from rest_framework import viewsets from product.models import ProductInfo
from product.serializers import ProductInfoSerializer class ProductInfoViewSet(viewsets.ModelViewSet):
queryset = ProductInfo.objects.all().order_by('id')
serializer_class = ProductInfoSerializer

六、路由demo/urls.py:

import xadmin

from django.conf import settings
from django.conf.urls.static import static
from django.urls import path, include
from rest_framework import routers from product import views router = routers.DefaultRouter()
router.register('product_info', views.ProductInfoViewSet) urlpatterns = [
# path('admin/', admin.site.urls),
path('admin/', xadmin.site.urls), path('ckeditor/', include('ckeditor_uploader.urls')),
# 添加CKEditor的URL映射 path('api/', include(router.urls)),
path('api-auth/', include('rest_framework.urls', namespace='rest_framework'))
# 配置django-rest-framwork API路由
] urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
# 配置图片文件url转发

七、API

python manage.py runserver

启动服务

http://127.0.0.1:8000/api/

xadmin引入django-rest-framework的更多相关文章

  1. Django REST framework+Vue 打造生鲜超市(四)

    五.商品列表页 5.1.django的view实现商品列表页 (1)goods/view_base.py 在goods文件夹下面新建view_base.py,为了区分django和django res ...

  2. Django REST framework 源码剖析

    前言 Django REST framework is a powerful and flexible toolkit for building Web APIs. 本文由浅入深的引入Django R ...

  3. DRF Django REST framework 之 解析器(二)

    引入 Django Rest framework帮助我们实现了处理application/json协议请求的数据,如果不使用DRF,直接从 request.body 里面拿到原始的客户端请求的字节数据 ...

  4. Django REST framework+Vue 打造生鲜电商项目(笔记二)

    (转自https://www.cnblogs.com/derek1184405959/p/8768059.html)(有修改) 接下来开始引入django resfulframework,体现它的强大 ...

  5. Django xadmin引入DjangoUeditor

    Django xadmin引入DjangoUeditor 版本:python3.6.1,Django1.11.1 DjangoUeditor下载地址:https://github.com/twz915 ...

  6. django入门8之xadmin引入富文本和excel插件

    django入门8之xadmin引入富文本和excel插件 Xadmin引入富文本 插件的文档 https://xadmin.readthedocs.io/en/docs-chinese/make_p ...

  7. [Django REST framework - RBAC-基于角色的访问控制、base64编码 、xadmin的使用]

    [Django REST framework - RBAC-基于角色的访问控制.base64编码 .xadmin的使用] RBAC-基于角色的访问控制 RBAC 是基于角色的访问控制(Role-Bas ...

  8. Django REST framework+Vue 打造生鲜超市(一)

    一.项目介绍 1.1.掌握的技术 Vue + Django Rest Framework 前后端分离技术 彻底玩转restful api 开发流程 Django Rest Framework 的功能实 ...

  9. 3- vue django restful framework 打造生鲜超市 - model设计和资源导入

    3- vue django restful framework 打造生鲜超市 - model设计和资源导入 使用Python3.6与Django2.0.2(Django-rest-framework) ...

  10. 1- vue django restful framework 打造生鲜超市

    Vue+Django REST framework实战 使用Python3.6与Django2.0.2(Django-rest-framework)以及前端vue开发的前后端分离的商城网站 项目支持支 ...

随机推荐

  1. 4.Go-结构体、结构体指针和方法

    4.1.结构体 结构体:将一个或多个变量组合到一起形成新的类型,这个类型就是结构体,结构体是值类型 定义结构体和赋值 //Learn_Go/main.go package main import &q ...

  2. 卷积神经网络以及TextCNN

    对于卷积神经网络的详细介绍和一些总结可以参考以下博文: https://www.cnblogs.com/pinard/p/6483207.html https://blog.csdn.net/guoy ...

  3. mac sudo免密码

    1.先切换到root用户sudo -i2.修改/etc/sudoers文件设置用户为免密码:%admin ALL = (ALL) NOPASSWD: NOPASSWD: ALL 参考:https:// ...

  4. 为某金融企业开发团队分享DevOps Server流水线使用经验

    http://www.cnblogs.com/danzhang/  DevOps MVP 张洪君

  5. python 爬取媒体文件(无防火墙)

    #coding = utf-8 import requests import pandas as pd import os,time root_path = './根目录/' input_file = ...

  6. Python【每日一问】37

    问: 基础题: 设计一个复利计算函数invest(),它包含三个参数:amount(资金),rate(年利率),time(投资时间). 键盘输入每个参数后,输出结果:返回每一年的资金总额 比如,amo ...

  7. php 500报错解决方案

    php 500报错解决方案 1 先看nginx error.log 指定的错误日记文件路径 找到这个日记文件看 里面信息 2 再看 php-fpm.conf 里面指定的PHP错误日记的路径 具体如下& ...

  8. Mysql 问题集

    [1]实现如下需求 需求: 实现方案: (1)复现场景 SQL语句: -- [1]删除表 DROP TABLE tbl_name; -- [2]创建表 )); INSERT INTO tbl_name ...

  9. json工具类(一)——alibaba包

    package com.ruoyi.common.utils.json; import java.util.HashMap; import java.util.List; import java.ut ...

  10. golang学习笔记 ---slice

    Go 语言中的slice类型可以理解为是数组array类型的描述符,包含了三个因素: 指向底层数组的指针 slice目前使用到的底层数组的元素个数,即长度 底层数组的最大长度,即容量 因此当我们定义一 ...