Django admin显示上传文件的完整路径,链接包含完整路径。我怎样才能解决这个问题?

时间:2011-06-16 11:28:55

标签: django django-admin

我有一个定义如下的模型:

class Attachment(models.Model):
  file            = models.FileField(upload_to=MEDIA_ROOT)

使用它的绝对路径定义MEDIA_ROOT,它类似于d:\ django \ my_proj \ media。在管理员中,指向它的链接如下所示:http://localhost:8000/media/d:/django/my_proj/media/file.txt。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

使用/代替MEDIA_ROOT。从the docs开始,upload_to应为:

  

将是的本地文件系统路径   附加到您的MEDIA_ROOT设置   确定网址的价值   属性。

换句话说,您在upload_to中指定的路径将附加到MEDIA_ROOT以形成上传目录,并附加到MEDIA_URL以形成文件的URL。< / p>

P.S。可能值得指定一个子目录而不是/,因此上传的文件无法覆盖您的媒体文件。例如,upload_to='uploads/'。要按年/月组织上传,您甚至可以upload_to='uploads/%Y/%m/'。有关详细信息,请参阅文档。