python 运用Django 开发后台接口 (二) 上传文件
·
1 新建django项目(2.02)
django-admin startproject apiTest2 新建app
在项目目录下
G:\apiTest>python manage.py startapp runcase3 打开apiTest\apiTest\settings.py 将新建app添加到配置文件
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'runcase',
]4 创建数据库
编辑apiTest\runcase\models.py文件
from django.db import models
# Create your models here.
class Upload(models.Model):
file_path = models.FileField(upload_to='./runcase/upload/')同步数据库,项目目录下执行命令
python manage.py makemigrations
python manage.py migrate5 创建视图
打开apiTest\runcase\views.py
# -*- coding: utf-8 -*-
from django.http import JsonResponse
from django.views.decorators.csrf import csrf_exempt
from django import forms
from runcase.models import Upload
# Create your views here.
class UserForm(forms.Form):
filename = forms.FileField()
@csrf_exempt
def test_api(request):
if request.method == "POST":
uf = UserForm(request.POST, request.FILES)
if uf.is_valid():
filename = uf.cleaned_data['filename']
#写入数据库
f = Upload()
f.file_path = filename
f.save()
return JsonResponse({"result": 0, 'msg': '请求成功,开始执行测试用例'})
return JsonResponse({"result": 1, 'msg': '请求失败'})
else:
return JsonResponse({"result": 1, 'msg': '请求失败'})
6 设置url
打开apiTest\apiTest\urls.py,修改为如下内容
from django.contrib import admin
from django.urls import path, include
from runcase import views
urlpatterns = [
path('admin/', admin.site.urls),
path(r'runcase/', include('runcase.urls')),
]
新建 apiTest\runcase\urls.py 文件
from django.urls import path
from runcase import views
urlpatterns = [
path(r'start', views.test_api, name='start'),
]
7 运行 server
apiTest>python manage.py runserver8 用postman请求接口
9 服务端检查文件是否上传成功
更多推荐
所有评论(0)