用django和python,寫一個上傳文件的程序
时间: 2023-05-16 17:05:34 浏览: 54
好的,这是一个比较常见的需求,下面是一个简单的示例代码:
```python
# views.py
from django.shortcuts import render
from django.core.files.storage import FileSystemStorage
def upload_file(request):
if request.method == 'POST' and request.FILES['myfile']:
myfile = request.FILES['myfile']
fs = FileSystemStorage()
filename = fs.save(myfile.name, myfile)
uploaded_file_url = fs.url(filename)
return render(request, 'upload.html', {
'uploaded_file_url': uploaded_file_url
})
return render(request, 'upload.html')
# upload.html
{% extends 'base.html' %}
{% block content %}
<h2>Upload a file</h2>
<form method="post" enctype="multipart/form-data">
{% csrf_token %}
<input type="file" name="myfile">
<button type="submit">Upload</button>
</form>
{% if uploaded_file_url %}
<p>File uploaded at: <a href="{{ uploaded_file_url }}">{{ uploaded_file_url }}</a></p>
{% endif %}
{% endblock %}
```
这个程序使用了 Django 自带的文件存储系统,可以将用户上传的文件保存到本地文件系统中,并返回一个 URL,供用户下载或查看。