gpt4 book ai didi

django - 如何获取 FileField 中文件的链接?

转载 作者:行者123 更新时间:2023-12-02 06:58:43 24 4
gpt4 key购买 nike

如何获取 FileField 的链接?我尝试了url字段,但它给出了文件路径:

In [7]: myobject.myfilefield.path
Out[7]: u'/home/xxxx/media/files/reference/1342188147.zip'

In [8]: myobject.myfilefield.url
Out[8]: u'/home/xxxx/media/files/reference/1342188147.zip'

我期待得到 http://<mydomain>/media/files/reference/1342188147.zip

我怎样才能得到它?我必须手动构建字符串吗?

编辑

我的 MEDIA_URL 尚未设置,但我仍然无法使其正常工作:

设置.py

MEDIA_ROOT = '/home/xxx/media/'
MEDIA_URL = 'http://xxx.com/media/'

models.py

class Archive(models.Model):

#...
file = models.FileField(upload_to="files")

在外壳中

a = Archive()
a.file = "/some/path/to/file.txt"
a.save()

然后我得到 a.path :

"/some/path/to/file.txt"

以及 a.url :

"http://xxx.com/media/some/path/to/file.txt"

以编程方式完成时,a.file = "/some/path/to/file.txt" ,文件未上传至MEDIA_ROOT 。如何上传 upload_to 定义的目录中的文件,即在我的例子中/home/xxx/media/file.txt

最佳答案

输出基于您的设置文件,请查看此处以了解如何在开发和/或生产中提供静态文件:

Confusion in Django admin, static and media files

关于django - 如何获取 FileField 中文件的链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11473785/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com