系统:ubuntu18.04 x64
GitHub:https://github.com/xingjidemimi/DjangoAPI.git
安装
pip install django==2.1.5 pip install djangorestframework # rest api pip install coreapi pygments markdown # 自动化接口文档
API示例
创建django项目
django-admin startproject DjangoAPI
创建应用
cd DjangoAPI
python manage.py startapp apiApp
项目代码
修改settings.py,添加应用到配置中
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'rest_framework', # 添加rest_framework应用 'apiApp', # 添加apiApp应用 ]
执行数据库迁移
python manage.py migrate
创建管理员,会提示输入用户名:ubuntu,邮箱:ubuntu@ubuntu.ubuntu,密码:ubuntu123456
python manage.py createsuperuser
修改/api/models.py,创建数据库模型。
from django.db import models class Test(models.Model): name = models.CharField(u'姓名', max_length=100, default='no_name') sex = models.CharField(u'性别', max_length=10, default='male') age = models.CharField(u'年龄', max_length=3, default='0') def __unicode__(self): return '%d: %s' % (self.pk, self.name)
创建模型后执行:
python manage.py makemigrations # 生成数据库迁移文件
python manage.py migrate # 执行数据库迁移
修改/api/admin.py,写后台管理代码
from django.contrib import admin from apiApp.models import Test # Register your models here. @admin.register(Test) class BlogTypeAdmin(admin.ModelAdmin): list_display = ('pk', 'name') # 在后台列表下显示的字段
运行项目
python manage.py runserver
出现如下内容表明成功:
System check identified no issues (0 silenced). January 23, 2019 - 08:28:09 Django version 2.1.5, using settings 'DjangoAPI.settings' Starting development server at http://127.0.0.1:8000/ Quit the server with CONTROL-C.
浏览器输入:
http://127.0.0.1:8000/ # 出现django成功的界面
http://127.0.0.1:8000/admin # 进入管理后台
序列化模型类,在/api/下创建serializers.py,返回json数据
from rest_framework import serializers from apiApp.models import Test class TestSerializers(serializers.ModelSerializer): class Meta: model = Test # 指定的模型类 fields = ('pk', 'name', 'sex', 'age',) # 需要序列化的属性
修改/api/views.py,视图
from django.shortcuts import render from rest_framework import viewsets from apiApp.models import Test from apiApp.serializers import TestSerializers class TestViewSet(viewsets.ModelViewSet): # 指定结果集并设置排序 queryset = Test.objects.all().order_by('-pk') # 指定序列化的类 serializer_class = TestSerializers
修改/urls.py/,配置主路由
from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), path('', include('apiApp.urls')), # 添加应用的路由地址 ]
在/api/下创建urls.py,配置应用路由
from django.conf.urls import include from django.urls import path from rest_framework import routers from apiApp import views from rest_framework.documentation import include_docs_urls API_TITLE = "API Documents" API_DESCRIPTION = 'API Information' # 定义路由地址 route = routers.DefaultRouter() # 注册新的路由地址 route.register(r'test', views.TestViewSet) # 注册上一级的路由地址并添加 urlpatterns = [ path('', include(route.urls)), # 接口文档路由 path(r'docs/', include_docs_urls(title=API_TITLE, description=API_DESCRIPTION, authentication_classes=[], permission_classes=[])) ]
运行项目
python manage.py runserver
打开浏览器输入:
http://127.0.0.1:8000 # api主页
点击主页提供的链接http://127.0.0.1:8000/test进入下一级目录
http://127.0.0.1:8000/docs进入接口文档
使用Postman测试工具测试api数据
进入ubuntusoftware应用商店,搜索postman进行安装
在postman中输入http://127.0.0.1:8000/api/student点击send,并返回json数据。
以上这篇Django+RestFramework API接口及接口文档并返回json数据操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。
1. 标题栏 NT_UI.setHeader(name, style); 列表 可选值 背景色 颜色 悬浮色 大小 间距 圆角 标题栏 wrapper true 标题栏-客服头像 kefuLogo true true true 标题栏-客服名称 kefuName true 标题栏-客服个性签名 kefuSignature true 标题栏-最小化按钮 min true true 标题栏-关闭按钮
初始化 xn('init') 停止默认初始化 xn('stopAutoInit'); 设置访客信息 // customerinfo的可选健值见下表 xn('setCustomerInfo', JSONObject customerinfo); 参数名称 类型 备注 默认值 uid String 用户id 无 uname String 用户名称 无 userlevel String 用户等级
基本信息 Path: /api/interface/get Method: GET 接口描述: 请求参数 Headers 参数名称 参数值 是否必须 示例 备注 Content-Type application/json 是 Query 参数名称 是否必须 示例 备注 id 是 接口id token 是 返回数据 名称 类型 是否必须 默认值 备注 其他信息 errcode number 非必须
为方便 Cocos Creator 开发者调试和接入腾讯云游戏多媒体引擎产品 API,本文为通过 Cocos Service 服务面板,接入腾讯云 GME 的接口文档。 此文档对应 GME SDK 的版本为 2.5.2。 函数原型为 GME Cocos SDK 接口文档 中定义的接口,Cocos Service 接入时设置了一个全局变量 tencentGME.tencentGMEInst,可参考示
ethers.js 主要包含以下4个模块 : 钱包(Wallet) ,Providers ,合约 Contract 以及 工具包 utils 。 在使用接口之前,请先确保正确 引入 ethers.js , 以下是接口列表: 钱包类 Wallet 和 签名器 Signer Wallet 签名器(Signer) 接口 提供者 Provider 连接以太坊网络 属性 获取网络 获取账号信息 获取以太坊状
本文档提供两种方式获取HPB随机数,对应两种接口。 一种是通过RPC接口获取历史随机数; 一种是通过智能合约使用最新随机数。 接口定义 通过RPC接口获取历史随机数 接口名称 :hpb_getRandom 参数 :块号 ,整形数字或者字符串”latest” 返回值:随机数,string, 使用“latest”查询最新块中的随机数 调用示例: curl -X POST -H "Content-Typ