2017-03-03 6 views
0

を提出それと。CSVを生成するために神社を使用すると、私は私が試してみて、自分自身を理解するための練習としてこれを使用しようと思いました神社は、仕事のための適切なツールであればかなりわからないんだけど、それは私たちの環境内の他の場所で使われているとして見

私は、CSVファイルを作成することで値を記述する必要がリストa = [1, 2, 3, 4, 5, 6, 7, 8, 9]

を持っています。 CSVファイルのすべての値は、aの値を除いて固定されます。私は、Pythonになり、作成のよう

a[0], 'something', 
a[1], 'else', 
a[2], 'but', 
. 
. 
a[5], 'repeated statement', 
a[6], 'repeated statement', 
. 
a[8], 'here endeth the lesson', 

は私が「」インデックスでの要素にアクセスすることができます。

だから私は、テンプレートファイルは、この(私はこれはJinja2の構文ではありません知っている)のようになります想像します私の出力ファイル?

+1

? – Marat

+0

ちょっと@マラットはい、それは私が今やっていることです。これはジンジャーにもっと慣れ親しんでいたが、仕事にとって間違ったツールだと思われる。 –

答えて

1

私はあなたの最終目標は正確にわからないんだけど、神社は、ビューを生成するためのテンプレート・ツールではなく、ファイルのいくつかの種類の詳細です。 @Maratが言ったように、csvモジュールを使用してcsvファイルを作成することができます。あなたの本当の目的はあなたのリストの値がテーブルに移入され、テーブルビューのいくつかのタイプを作成するために神社を使用する場合

しかし、その後、あなたは確かに神社であることを行うことができます。あなたのHTMLビューで

、あなたはこのようなものだろう:もちろん

<table> 
    <thead> 
     <tr> 
      <th>List[idx]</th> 
      <th>Value</th> 
     </tr> 
    <thead> 
    <tbody> 
     {%- for item in a -%} 
     <tr> 
      <td>a[{{ loop.index - 1 }}]</td> 
      <td>{{ item }}</td> 
     </tr> 
     {%- endfor -%} 
    </tbody> 
</table> 

を、あなたはこれが機能するためには、あなたの神社にコンテキスト変数としてあなたaリストを渡す必要があります。私はフレームワークとしてFlaskを使用していると仮定しています。

@app.route('/your-route') 
def your_route_function(): 
    ... # your code for creating the 'a' list 
    ... # more code 
    return render_template('yourhtml.html', a=a) 

ここで、インデックスでリストにアクセスしたい場合は、これも可能です。あなたは、神社のlengthフィルタを使用してもあなたのリストの長さを決定しなければならない:あなたの代わりに組み込みの `csv`モジュールを使用しない理由

<table> 
    <thead> 
     <tr> 
      <th>List[idx]</th> 
      <th>Value</th> 
     </tr> 
    <thead> 
    <tbody> 
     {%- for idx in range(a|length) -%} 
     <tr> 
      <td>a[{{ idx }}]</td> 
      <td>{{ a[idx] }}</td> 
     </tr> 
     {%- endfor -%} 
    </tbody> 
</table> 
+0

私たちの環境では、さまざまな目的のために繰り返し可能なテキストファイルを生成するために使用されます。私はあなたが私を正しい軌道に乗せたと思う。テストして戻ってみましょう。 –

関連する問題

 関連する問題