2017-12-14 10 views
0

私はheader_template.csvに書き込むことによって、いくつかのcsvファイルを印刷していますが挿入されます。私は、この動作は、多くの場合のpythonで発生し、通常、私はちょうど'wb'でファイルを開く必要があるだろうが、私はここで直接ファイルを開いておりませんので、できないことをことを知っているDjangoのテンプレートのcsvライターは、空白行

*blank line* 
a,b,c 
*blank line* 

:出力は次のようになりますフラグを渡す。私は何とか'w'の代わりに'wb'をDjangoに使用するように指示できますか?

+1

2行を1行に変更するとどうなりますか? '{%load devicetags%} {%get_headers device_list%}'? – ikkuh

+0

ありがとう、私はそれが違いをもたらすとは思わなかった! – LizzAlice

+0

テンプレートを使用してCSVを生成する必要はありません。 csvモジュールを使用して、ビューで直接生成します。 –

答えて

1

CSVをテンプレートでレンダリングすることは理想的な方法ではありません。すでに見つかった新しいラインの問題を除いて、コンテンツが正しく引用されていない他の問題も簡単に実行できます。

csvライブラリを使用して、PythonでCSVを生成することを検討する必要があります。これにより、値を書き込む前に適切に引用符とエスケープ値が処理されます。

documentationには、DjangoでCSVを出力するセクションがあります。

関連する問題