2012-03-08 17 views
1

免責事項:私はdjangoとpythonの新機能ですが、Drupalプログラミングの経験があります。beginner:djangoプログレスバーjquery(マルチパート形式ではありません)

jqueryuiプログレスバーを私のdjango(開発サーバー)サイト(localhost上でsqliteを実行しているサイト)に統合する簡単な方法を探していましたが、バーにはファイルのアップロードは表示されませんが、別のpythonスクリプト(私は多くのSDCardからdjangoウェブフロントエンド経由でローカルホストに何百もの写真を転送する必要があります)。私のWebアプリケーションはすでにjqueryダイアログボックスが表示されているので、簡単にajaxリクエストを受け取ることができます($ .get ...

私はスレッド、サブプロセス、セッションを使用するべきですか? 、またはいくつかの組み合わせ?どれスニペット(または完全なデモのは、一緒に私を助けるために)?

スレッドが答えであるならば、私はこれがOKであると仮定?http://nedbatchelder.com/blog/201103/quick_and_dirty_multithreaded_django_dev_server.html

答えて

0

あなたは何をするジャンゴ・ztaskやセロリのようなものを使用することができますバックグラウンドプロセス

ユーザーがいるページでは、ajaを使用して進捗状況を表示する必要がありますxまたは単にそれ自体をリロードし、更新された進行状況バーを表示します。

0

リアルタイムにしたい場合は、ロングポーリングを使用することはできますが、行うことが多すぎます。

脳死の最も単純な方法は、別のプロセスをワーカーとして使用し、プロセスを一時ファイルに更新することです。 (このファイルには、進行のパーセントである1行しかありません)。

あなたのビューは単にファイルを取得し、それを読み取ってそのままクライアントに戻す必要があります。一時ファイルに関する情報は1行の進捗インジケータ(例えば、79%の79%)であるため、Javascriptで解析するのは非常に簡単です。

ブラウザでは、5秒ごとにajax getリクエストでビューを呼び出し、進行状況バーを更新できます。

関連する問題