【发布时间】:2018-08-06 19:06:23
【问题描述】:
这是我在 postgres 中的表格:
我如何将其引入前端,以便用户无需访问数据库即可上传他们的文档。现在我只能将文档上传到文件系统而不是数据库:
views.py:
def upload(request):
if request.user.is_authenticated:
username = request.user.username
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, 'app/upload.html', {
"uploaded_file_url": uploaded_file_url,
"username": username,
})
return render(request, 'app/upload.html', {
"username": username,
})
上传.html:
{% if form.errors %}
<p>You did not select a file to upload!</p>
{% endif %}
<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 %}
models.py:
class Document(models.Model):
Document_name = models.CharField(max_length=255, default='Document_name')
Date = models.DateField()
Client_id = models.ForeignKey(ClientDetail, on_delete=models.CASCADE)
def __str__(self):
return self.Document_name
还有我将如何检索上传的文档。
【问题讨论】:
-
请同时显示该 Postgres 表的架构。它是 Django 管理的模型,还是单独的数据库? (如果是 Django 模型,还要显示模型代码。)
-
已编辑原始问题。它是 Django 管理的模型,但我认为我们最近没有进行迁移,因此 models.py 中缺少 pdf、doc、ppt、xlsx 字段
-
我不敢相信这是您拥有的 Django 模型,因为它缺少出现在数据库表中的
pdf/doc/ppt/xlsx字段。跨度> -
我们将需要实际的数据库定义 - 恕我直言,但我不在乎您是否完成了迁移。
-
该架构有帮助吗?
标签: python html django database postgresql