0

Python/Jinja2 Web ページにプログレス バーを追加しようとしています。

不明な長さ/一定のアニメーションに JS プログレス バーを使用するのは簡単ですが、スクリプトの完了率がわかっているので、実際の速度を表示することにしています。

このトピックを検索してみましたが、python CGI または Jinja を使用して実際の進行状況バーを実際に表示する方法については何も見つかりませんでした。

私を妨げている部分は、絶えず変化する変数 (進行状況 %) を Jinja に更新し、Web ページの進行状況バーを更新する方法がわからないことです。

プログレスバーのラッパーとして使用することを考え{%block%}、% が増加するたびにこの部分を python スクリプトで再レンダリングします。これは理論的には機能するはずですが、このブロック全体 (% だけでなく) が何十回も常に更新されるため、論理的には正しい方法ではないようです。

レンダリングされた HTML ページで Python の変数を動的に更新できる場合、または Python から投稿された cgi.FieldStorage に Jinja がアクセスできる場合は、より理にかなっていますが、これらのいずれかを行う方法が見つかりませんでした.. .

[編集] ブロックを使用してみましたが、うまくいきませんでした。

// base.html
  {%block body%}
  {%endblock%}
// block.html
  {%extends "base.html"%}
  {%block body%}
    <div class="progressbar"></div>
    {{super()}}
  {%endblock%}
//python
for 1 in 10
    template = env.get_template('block.html')
    print template.render(var)

ページは読み込まれますが、プログレス バーは前のバーに 10 回繰り返し追加されます。

4

1 に答える 1