写在前面:
一直回到老家苟活,一天天无所事事,毕设进展更是一言难尽。。今天听到要开学的消息了,,
settings
MEDIA_URL = "/media/"
MEDIA_ROOT = os.path.join(BASE_DIR, "media")
# 指定文件上传的路径
url.py
from django.urls import path, re_path
from app01 import views
from django.views.static import serve
from daibi import settings
urlpatterns = [
path('upload/', views.upload),
# 加这个路径能够访问到图片
re_path(r'^media/(?P<path>.*)$', serve, {'document_root': settings.MEDIA_ROOT}),
]
views.py
def upload(request):
if request.method == "POST":
obj = request.FILES.get("img")
path = os.path.join(settings.MEDIA_ROOT, "add_img", obj.name)
# 拼接到media/add_img 要提前建立路径,否则会报错,media何app同级
with open(path, "wb") as f:
for i in obj:
f.write(i)
res = {'url': '/media/add_img/'}
return JsonResponse(res)
return render(request, "upload.html")
前端:
<form action="" method="post" enctype="multipart/form-data">
{% csrf_token %}
<input type="file" name="img">
<input type="submit" value="提交">
</form>