python - 使用Django时如何正确存储excel文件
问题描述
我正在将本地计算机上具有经典 GUI 的 Python 应用程序切换到我的 Django 网站上的基于云的应用程序,并且想知道在处理应用程序时存储用户文件的正确方法。
目前我正在使用模块中的FileField
类models
来上传文件。我将upload_to=
参数设置为一个新文件夹 anmed spreadsheets/
。我想知道这是否是存储将被处理然后很快丢弃的文件的正确方法。或者我应该将文件存储在内存中(以某种方式)以使过程更快并且代码更简单?
当前模型.py:
class Spreadsheets(models.Model):
title = models.CharField(max_length=100)
xls = models.FileField(upload_to='spreadsheets/')
def __str__(self):
return self.title
当前处理上传的 views.py 函数:
@login_required
def upload_sheet(request):
if request.method == 'POST':
ss_form = SpreadsheetForm(request.POST, request.FILES)
if ss_form.is_valid():
ss_form.save()
return redirect('sheet_list')
else:
ss_form = SpreadsheetForm
return render(request, 'uploader/upload_sheet.html', {
'ss_form': ss_form
})
此外,Model
该类期望title
作为参数给出。有没有办法告诉 Python 在Spreadsheets
子类中忽略这个参数?
解决方案
推荐阅读
- python - 有条件地将一幅图像的像素值分配给另一幅图像
- php - 水平表而不是使用 PHP 的垂直表
- javascript - 使用 innerHTML 的消息输出
- python - scrapy 将 argu 传递给 selenium
- python - Python (3.7+) 多处理:用 asyncio 替换 master 和 worker 之间的管道连接以实现 IO 并发
- ruby-on-rails - 在 Rails 应用程序构建中跟踪最新的稳定 ruby 版本
- pyevolve - Pyevolve - 染色体总和 = 1
- c# - C#如何操作列表以从不同的字符构建单词?
- list - 在 Prolog 中列出的元组
- c# - Windows 7 中的 appresolver.dll 或类似文件