FilePathField生成反斜杠

时间:2014-11-18 07:16:52

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

我在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 }});未正确指向图像文件。

1 个答案:

答案 0 :(得分:0)

我知道这是一个老问题,但我遇到了同样的问题,简单的答案是:在路径上添加一个尾部斜杠。

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

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

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