测开大佬告诉你:如何5分钟快速创建restful风格的API接口-使用django restframework框架

一、思考❓❔

1.创建API接口难吗?

软件测试工程师:

  • 只测过API接口, 从没创建过
  • 应该需要掌握一门后端开发语言和后端开发框架吧!?
  • 脑容量有限,想想就可怕
2.如何创建API接口呢?
  • 使用Django restframework能快速创建符合restful风格的API接口
  • 通过Django restframework框架提供的序列化器、视图集可轻轻松松实现
  • 简单高效,学习成本低

二、搭建项目工程🔨🔨

1.创建项目
  • 打开pycharm

  • 创建项目

    • 使用豆瓣源安装Django Django restframework markdown
    • 创建Django项目工程

    在Terminal中运行python manage.py runserver , 在浏览器中访问, 如果出现如下页面代表成功

三、创建API接口💪🏽💪🏽

1.创建子应用并迁移
# 在Terminal中创建子应用
python manage.py startapp users

# 进行数据库迁移
python manage.py makemigrations
python manage.py migrate
2.添加配置

在CreateRestfulAPI/settings.py中添加如下配置:

# 将'rest_framework'和'users.apps.UsersConfig'加入到INSTALLED_APPS列表中
INSTALLED_APPS = [

    # restframework子应用
    'rest_framework',
    # users子应用
    'users.apps.UsersConfig',
]

# restframework的全局配置放在REST_FRAMEWORK字典中
REST_FRAMEWORK = {
    # 使用Django自带permission_class来进行认证
    # 为认证的用户只有读的权限
    'DEFAULT_PERMISSION_CLASSES': [
        'rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly'
    ]
}
3.编写代码
  • 创建users/serializers.py文件
from django.contrib.auth.models import User
from rest_framework.serializers import HyperlinkedModelSerializer


# 创建序列化器
class UsersModelSerializer(HyperlinkedModelSerializer):
    class Meta:
        model = User
        fields = ('url', 'username', 'email', 'is_staff', 'is_active', 'last_login')
  • users/views.py中添加如下代码
from rest_framework import viewsets
from django.contrib.auth.models import User

from users.serializers import UsersModelSerializer


# 定义视图集
class UsersViewSet(viewsets.ModelViewSet):
    queryset = User.objects.all()
    serializer_class = UsersModelSerializer
  • 创建子路由users/urls.py文件
from rest_framework.routers import DefaultRouter

from .views import UsersViewSet

# 创建DefaultRouter对象
router = DefaultRouter()
# 批量添加路由
router.register(r'users', UsersViewSet)

urlpatterns = [

]

urlpatterns += router.urls
  • 在全局路由文件CreateRestfulAPI/urls.py中添加如下代码
from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    # 添加restframework自带的登录接口路由
    path('', include('rest_framework.urls', namespace='rest_framework')),
    # 添加子路由
    path('', include('users.urls')),
]
  • 创建超级管理员用户
  • 运行项目
    • 在命令行输入: python manage.py runserver
4.效果展示
  • 访问主页
  • 使用超级管理员用户登录
  • 对用户进行管理(POST、GET)
  • 对用户进行管理(GET、PUT、DELETE)

六、总结💡💡

  • 本文介绍了一种创建符合Restful风格的API接口的方法
  • 包含Django项目环境的搭建
  • 实现了GET、POST、PUT、DELETE接口的创建方式, 简单高效
  • 本文为可优原创,有不足之处,请多指教!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值