【问题标题】:Get an absolute path of a file from the user's local machine从用户的本地机器获取文件的绝对路径
【发布时间】:2014-07-15 15:14:00
【问题描述】:

我在一个项目中使用 django,我在该项目中上传文件并将文件路径存储到我的应用程序中的媒体文件夹。 现在在 django 中是否有一种方法可以获取用户本地计算机的绝对路径,而不是应用程序内的媒体目录? 所以它可以返回像

这样的路径
`C:\Users\Josh\Desktop\joshua.doc`

例如存储在用户桌面上的文件及其命名的joshua.doc。 我们非常感谢您的贡献和见解。

【问题讨论】:

    标签: django


    【解决方案1】:

    如果您的“媒体”目录与“settings.py”文件位于同一目录中,那么您可以定义以下设置:

    import os
    
    BASE_DIR = os.path.dirname(os.path.abspath(__file__))
    

    并将媒体路径追加到BASE_DIR路径中,得到媒体文件的绝对路径。

    如果您的 'media' 和 'settings.py' 在不同的目录中,那么您可以相应地修改 BASE_DIR。

    【讨论】:

    • 谢谢,我想要一种方法不是从媒体文件而是从用户本地计算机获取绝对文件?这可能吗?
    • 哦,好吧,所以你想访问位于 django 项目之外的文件。使用 Django 的模型 FileField 是不可能的。你可以通过继承 FileField 来创建一个新的字段类型,但首先你为什么要这样做呢?
    • 我想存储所有上传文件的路径。在用户本地机器上的文件位置的绝对路径,而不是应用程序文件夹
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-09-18
    • 2016-07-23
    • 2012-04-24
    • 2016-11-19
    • 1970-01-01
    相关资源
    最近更新 更多