需求
现在面临的问题就是上传重名文件,将他们写入后变成了一个文件,现在需要的方案是上传的时候可以重名,但是存储在物理路径后不能重名,下载后文件名字为上传的文件名
我想偷懒,django admin自带上传有重名解决方案,然后下载也是上传的名字,但是自己写就不行了,想找找有没有类似django admin上传解决重名的方案
django创建了一个model 代码如下
class oderexcel(models.Model):
file = models.FileField(upload_to='oderexcel')
name = models.CharField(max_length=128)
class Meta:
db_table = 'oderexcel'
verbose_name = '材料报表'
verbose_name_plural = verbose_name
def __str__(self):
存储文件是接受到用户上传的文件后写入的,写入方式如下
filename:用户上传的文件名
#数据库存入名
filenamepath = r"/oderexcel/" + filename
#将文件存储路径存数据库
oderexcel.objects.create(file=filenamepath,name=filename)
#存文件物理路径
filename = r'static/media/oderexcel/' + filename
#存储文件
workbook.save(filename)