問題タブ [rescue]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - この Rails メソッドで ActiveRecord::StatementInvalid をレスキューできないのはなぜですか?
次の方法で何も救出できないのはなぜですか?
有効な ID で呼び出されると、次のように機能します。
しかし、次のような間違ったものを渡すと:
例外はレスキューされません:
begin/rescue ブロック内でレンダリングが発生する場合のみ
期待どおりに動作します:
ruby-on-rails - STI での SubclassNotFound エラーのレスキュー
ActiveRecord::SubclassNotFound
基本クラス (Rails 2.3.8) のモデル内のエラーを救済するためのベスト プラクティスまたは慣用的な方法はありますか? データベースに既知の壊れた型がある場合にcall のようなことを実行できるようにして、この検索が行われるたびに個別BaseClass.all
に書き込む必要なく、常にレスキューできるようにしたいと考えています。begin...rescue...end
ruby - / sidekiqルートをパスワードで保護するにはどうすればよいですか(つまり、Sidekiq :: Webツールの認証が必要です)?
Railsアプリケーションでsidekiqを使用しています。デフォルトでは、URLの後に「/ sidekiq」を追加することで、誰でもSidekiqにアクセスできます。sidekiq部分のみをパスワードで保護/認証したい。どうやってやるの?
ruby-on-rails - `constantize`メソッドによって発生したエラー例外を救済する方法は?
Ruby on Rails 3.2.2を使用していますが、「カスタム」エラーメッセージを表示して、次のプロセスフローを適切にレスキューしたいと思います。
注:コードをDRYconstantize
するために、発生した「カスタム」メッセージでもこのメソッドを使用することを「強制」されていると感じます。
rescue_method
を実行すると、コードが実行されなかったようで、raise("My custom error message")
次のエラーが発生します。
発生した「カスタム」メッセージを適切に表示するにはどうすればよいですか(後続の発生した「カスタム」メッセージでさらにエラー例外が発生するため)。何についてアドバイスしますか?
ruby - Ruby - すべてのネットワーク例外をキャッチ
すべてのネットワーク関連の問題を把握する最善の方法は何ですか?
例外は上のいくつかのレイヤーで処理されます (さまざまな場所からスローされる可能性があり、それが処理するのに適した場所です)。明らかに、他の問題を隠す可能性があるため、一般的な例外としてキャッチしたくありません。
誰かが以前にこの問題に遭遇したことを願っています。これは私の現在のリストです (しかし、完全ではないのではないかと心配しています):
ruby - Rubyのレスキューステートメントはrequireで機能しますか?
Rubyrescue
ステートメント修飾子は機能しrequire
ますか?
ruby-on-rails-3 - 他にチェックが失敗した場合はレールをレスキューします
enabled_only
コントローラーには、ユーザーを見つけるための 2 つのメソッドがあります (スコープに注意してください)。
確かに、これらを 1 つのメソッドにマージして:action == 'show'
、エラーをキャッチするためのレスキューを取得できなかったかどうかを確認できます。次のようなことを試しましたが、うまくいきませんでした。
これを行う方法についてアドバイスをお願いします。
ありがとう
ruby - rubyはThread.abort_on_exceptionからの中止を救助または確認できません
スレッド内の例外をすぐにキャッチしてすべてのスレッドを停止する必要があるため、スクリプトでabort_on_exceptionを使用しています。残念ながら、これは例外が親スレッドに発生しないことを意味します-おそらくこれは、例外がグローバルスコープで発生することになったためですか?
とにかく、これが問題を示す例です:
abort_on_exceptionを使用しているときにスレッドで発生した例外をどのように救済できますか?
これは、さらに厄介なことを示す新しい例です。スレッドはbeginブロック内の実行を強制終了できますが、例外を発生させることなく実行を強制終了しますか?
ruby - レスキュー ブロックが機能しないのはなぜですか?
Selenium webdriver を使用しており、テストの失敗を報告する前に、ページ オブジェクトにページを複数回表示させようとしています。私の問題は、開始レスキュー ブロックでキャッチされていないエラーが発生していることです。
ここにエラーがあります
Selenium::WebDriver::Error::NoSuchElementError: 要素が見つかりません: {"method":"id","selector":"does not exist"}
ruby-on-rails - ID が見つからない場合のコントローラー全体の一般的なレスキュー - RoR
アプリケーションがデータベースに存在しない ID を検索する状況に遭遇しました。例外がスローされます。もちろん、これは Web 開発者にとって非常に標準的な状況です。
この回答のおかげで、次のようにレスキューを使用すると状況がかなりきれいに処理されることがわかります。
顧客が見つからない場合、ユーザーはインデックス ページにリダイレクトされます。これは絶対にうまくいきます。
さて、これでいいのですが、show、edit、destroy などのアクション、つまり特定の ID を必要とするすべてのコントローラー メソッドで同じレスキュー試行を行う必要があります。
そうは言っても、ここに私の質問があります: 私のコントローラーに、そのメソッドのいずれかでIDが見つからない場合、インデックスページにリダイレクトする(または、一般に、特定のタスクを実行する)ことを一般的に伝える方法はありませんか? )?