django - docfile将%0D添加到url?

时间:2013-04-22 00:18:00

标签: django

我有一个奇怪的问题,我们服务器上的docfile.url文件正在向网址的末尾添加%0D(回车)。这只发生在我手动链接的文件中。我的意思是,目录中有大约1,000个文件,我创建了一个CSV文件,其中包含每个文件的idfilename,并将它们添加到mysql数据库中码。通常通过我的django应用程序界面链接正常上传的所有文件 - 点击其链接可正确打开文件。

以下是CSV文件的示例:

792,asbuilts/C0010.pdf
793,asbuilts/C0011.pdf
794,asbuilts/C0012.pdf
795,asbuilts/C0013.pdf
796,asbuilts/C0014.pdf
797,asbuilts/C0015.pdf
798,asbuilts/C0016.pdf
799,asbuilts/C0017.pdf

我在目录static_media/asbuilts/中拥有所有这些已构建的文件。在mysql中我运行了这个命令:

load data local infile '/srv/www/cpm/CPM_CSV_Files/comm_asbuilts.csv' into table systems_asbuilt fields terminated by ',' lines terminated by '\n' (id, docFile);

select * from systems_asbuilt的示例输出如下:

 |846 | asbuilts/C0057.pdf
 |847 | asbuilts/C0059.pdf
 |848 | asbuilts/C0060.pdf
 |849 | asbuilts/C0061.pdf
 |850 | asbuilts/C0062.pdf
 |851 | asbuilts/C0063.pdf
 |852 | asbuilts/C0064.pdf

一切看起来都不错?

但是当我查看创建的链接时,它看起来像这样:

`www.ourdomain.com/static_media/asbuilts/R0546.pdf%0D'

如果我从链接中手动删除%0D,则文件会按预期打开。知道为什么会有额外的%0D吗?它来自哪里?

由于

1 个答案:

答案 0 :(得分:0)

我的猜测是,这个:

lines terminated by '\n'

应该是

lines terminated by '\r\n'

您的结果“看起来”正确,因为您正在使用它来浏览它,但是当检索到该记录时,它仍然附加了\r

因此,您可以在将其加载到数据库之前将其删除,或者在生成链接之前将其.strip()删除。