【发布时间】:2011-01-19 04:23:23
【问题描述】:
Django 究竟对MEDIA_ROOT 做了什么?我一直不明白。既然 Django 本身不提供静态媒体,而且你必须为它设置 apache 或类似的东西,它为什么关心它位于哪个目录?
【问题讨论】:
Django 究竟对MEDIA_ROOT 做了什么?我一直不明白。既然 Django 本身不提供静态媒体,而且你必须为它设置 apache 或类似的东西,它为什么关心它位于哪个目录?
【问题讨论】:
当您创建具有 ImageField 或 FileField 属性的模型时,您应该传递 upload_to 参数。这是一个相对路径将附加到您的 MEDIA_ROOT 路径,并且将保存和检索该文件。
【讨论】:
你不是唯一一个想知道的人;查看Django ticket #10650。根据那里 Django 开发人员的 cmets,我认为这几乎总结了 MEDIA_ROOT 的用途:
不幸的是,Django 也有过错,因为它的文档中关于什么 MEDIA_ROOT 和 MEDIA_URL 用于。搜索 Django 的代码可以确认 MEDIA_ROOT & MEDIA_URL 用于文件上传,MEDIA_URL 是作为 通过默认上下文处理器方便模板(使用时可用 RequestContext??)。
【讨论】:
它似乎被 Django 中的某些类用作默认值——例如,FileSystemStorage 使用它作为存储文件的默认位置。
【讨论】: