Django文件上传 - 文件路径

时间:2017-11-17 23:02:47

标签: django python-3.x

我使用model.FileField方法上传文件,但我对如何实际返回上传文件的路径感到茫然(我无法重新创建路径,因为可能存在重复文件和imagename更改)

Views.py

if form.is_valid():

        newdoc = Invoices(docfile = request.FILES['docfile'])
        newdoc.save()

Models.py

class Invoices(models.Model):
    docfile = models.FileField(upload_to='invoices/')    
    timestamp = models.DateTimeField(auto_now_add=True)
    username = models.CharField(max_length=20, default="default_user")

我发现了一些对document.uploaded_file路径等的引用,但它们抛出错误 - 没有属性文档。是否可以使用上述方法获取保存文件的实际路径,包括可能更改的文件名?

1 个答案:

答案 0 :(得分:1)

您可以获取访问newdoc.docfile.path的文件的完整文件系统路径 - 在模板中,您肯定希望使用{{ newdoc.docfile.url }}属性。有关详细信息,请参阅documentation on FileField