【问题标题】:FilePathField makes backslashesFilePathField 使用反斜杠
【发布时间】:2014-11-18 07:16:52
【问题描述】:

我在 Django 中使用FilePathField,但路径是特定于操作系统的。当我在 Windows 上使用它时,路径中会出现反斜杠。

image = models.FilePathField(path='static/img')

这似乎是一个错误?我怎样才能避免它?一个不好的解决方案是用普通斜杠替换模板中的反斜杠。但是怎么做?我还能找到其他选择吗?

编辑

我可以在static/img 目录中的所有文件之间进行选择。现在我想在我的模板中打印文件路径:{{ object.image }},但结果是static/img\chosen_file.png。 Html 和 CSS 无法将反斜杠解释为正斜杠,因此 background-image: url({{ object.image }}); 无法正确指向图像文件。

【问题讨论】:

  • 目前尚不清楚到底发生了什么,以及为什么您认为这是一个问题。请发布输出示例,并准确解释这会导致什么问题。
  • 我已经编辑了我的问题 :-)
  • 字段值是如何赋值的?
  • 在一个普通的UpdateView.

标签: python django django-models django-templates django-views


【解决方案1】:

我知道这是一个老问题,但我也有同样的问题,简单的答案是:在路径中添加一个斜杠。

image = models.FilePathField(path='static/img/')

在 Windows 7 上使用 Django 1.9.2 和 Python 3.4.2 为我工作。

但是:仅适用于文件夹中直接的文件,不适用于子文件夹

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-12-09
    • 1970-01-01
    • 2012-06-16
    • 1970-01-01
    • 2012-04-14
    • 2013-06-24
    • 1970-01-01
    • 2011-09-06
    相关资源
    最近更新 更多