0

私は巨大なデータベース (数百ギガバイト) を備えた Rails アプリケーションを持っています。このデータベースには、データをどう処理するかについてさまざまなオプションがあります。場合によっては、データの変更など、これは Sidekiq で行うバックグラウンド タスクで行うことができます。しかし、多くの行と列または複雑な SQL クエリを含むデータを表示する場合など、データを取得するプロセスに非常に長い時間がかかる場合もあります。

私がやりたいことは、ユーザーがリンクをクリックしたときに何かが起こっていることをユーザーに示すことです。多くのブラウザーにあるプログレス バーと同様ですが、より明白であるため、ブラウザーの操作に慣れていないユーザーでも、何かが発生してロードされていることがわかるはずです。

問題は、これをどのように行うかです。私はすでにAJAXとjQueryでさまざまなオプションを試しましたが、ほとんどの場合、これは特定のアクションに対してしか実行できませんが、基本的にはアプリケーション全体に対して実行したいと考えています. したがって、ユーザーが新しいページをロードするリクエストを送信するたびに、何かが起こっていることをすぐに示したいと思います。

私が最も近づいたのは、常にトリガーされる Javascript でした。問題は、文字通り毎回発生し、ページのリロードを余儀なくされることでした。これは、要素を切り替えると、進行状況バーが表示され、ページがリロードされたことを意味します。

本質的に、私が探しているもの:

私のアプリケーションは Ruby と Rails 4 で実行され、新しいページが読み込まれるたびに、リクエストが処理されていることをユーザーに示す必要があります。そのため、リクエストに数秒かかっても、ユーザーは緊張しません。何かが起こっていること。

解決策が見つからないようなので、解決策を見つけるための助けをいただければ幸いです...

4

1 に答える 1

0

何かが起こっていることをユーザーに示すには、JavaScript アニメーションを使用する必要があります。

例: http://ricostacruz.com/nprogress/

于 2013-10-01T07:14:18.047 に答える