問題タブ [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.

0 投票する
2 に答える
16579 参照

ruby - Rubyで評価を救う方法は?

eval()Ruby 1.8.6 でコードを実行するときに発生する構文エラーを解決する方法を見つけようとしています。

次の Ruby コードが必要です。

実行すると次の結果が生成されます。

代わりに、私が得るものは次のとおりです。

eval メソッドによって発生した SyntaxError は、自分で処理する機会を与えずに、eval 内のどこかでレスキューされているようです。

私が望む動作を取得する方法を知っている人はいますか (つまり、「レスキュー」句が「評価」からエラーをキャッチするため)?

0 投票する
1 に答える
282 参照

c# - ASP.NET MVC Rescues View の場合、ViewData フィールドを追加するにはどうすればよいですか?

考えられる障害に対していくつかの Rescue を定義しましたが、ViewData にアクセスして、マスターページのレンダリングに必要なものをデータに入力することができません。これは、利用できるコントローラに隠されていますか?

0 投票する
4 に答える
2464 参照

ruby-on-rails - Ruby on Rails でオブジェクトを作成する場合、どの保存方法を好みますか? またその理由は何ですか?

Ruby on Rails アプリでオブジェクトの「作成」メソッドを作成するとき、2 つのメソッドを使用しました。コードをよりクリーンで一貫性のあるものにするために、1 つの方法を使用したいと思います。以下に2つの方法をリストします。一方が他方より優れているかどうかは誰にもわかりませんか?もしそうなら、なぜですか?

方法 1:

方法 2:

0 投票する
5 に答える
9397 参照

ruby - Ruby のライブラリ メソッドによってどのような例外が発生するかわからない場合の対処方法は?

これはやや大雑把な質問ですが、Ruby でプログラミングするときに常に遭遇する質問です。私は主に C と Java のバックグラウンドを持っています。ライブラリ関数またはメソッドを使用するときは、ドキュメントを見て、エラー時に返されるもの (通常は C) や、スローされる可能性のある例外 (Java) を確認します。

Ruby では状況がまったく異なるようです。ここで、サーバーから受け取った JSON を解析する必要があります。

当然、このコードを書いた後に最初に考えるのは、入力が悪い場合はどうなるかということです。エラー時に nil を返すか、何らかの例外を発生させますか?parseもしそうなら、どれですか?

ドキュメント(http://flori.github.com/json/doc/JSON.html#M000022)を確認すると、次のようになります。

「JSON 文字列ソースを Ruby データ構造に解析して返します。」

これは、私が Ruby で繰り返し遭遇したパターンのほんの一例です。当初、これは私が使用しているライブラリのドキュメントの欠点だと考えていましたが、今ではこれが標準的な慣行であると感じ始めており、Ruby プログラマーとは考え方が少し異なります。私が知らない慣習はありますか?

開発者はこれにどのように対処しますか?

(そして、はい、私はライブラリ メソッドのコードを見て、どの例外が発生するかについてある程度のアイデアを得ることができましたが、100% 確信することはできず、文書化されていない場合、それに依存することに不快感を覚えます。)

EDIT : 最初の 2 つの回答を見た後、上記の JSON 解析の例を続けます。

私はすべきではないと思います:

コード/テストを見て、ParserErroron エラーが発生しているように見えるからです (nil を返すことは、Ruby では標準的な方法ではないようです)。推奨される方法は次のとおりです。

ParserError...コードとテストを調べて学んだことに基づいていますか?

(また、解析しているサーバーからの応答であることを明確にするために例を編集しました。)

0 投票する
3 に答える
41842 参照

ruby-on-rails - Rails でレスキューを使用する

私は次の作品を扱っています。

今、私は正しいIDを持っているかどうかに関係なく、私の見解では常に「OK」になっています。何が間違っていますか?

「エラー」を表示するためにDBにIDがない場合に必要です。私も使用しようとしましrescue ActiveRecord::RecordNotFoundたが、同じことが起こります。

すべての助けに感謝します。

0 投票する
2 に答える
1244 参照

ruby-on-rails - 救出ノコギリエラー

Twitter のユーザー名を見て場所を取得する簡単なスクリプトがあります。しかし、ユーザー名の一部が存在せず、エラーが発生します:

私はそれを救おうとしましたが、それを機能させることはできません。誰でも助けることができますか?ありがとう

別のエラーを解決するための助けも必要です:

ありがとう。

0 投票する
2 に答える
18522 参照

ruby-on-rails - Rescue を開始してエラーをキャッチできません

私はいくつかの ruby​​ コードを begin-rescue ブロックでラップして使用していますが、どうにかしてまだクラッシュしています。

コードのブロックは次のようになります。

このコードを考えると、process_messageまたはadd_to_processed_folderを実行できなかった場合、レスキューが開始され、handle_bogus_messageが呼び出されると想定します。そうは言っても、私はこのコードを本番環境で実行していますが、電子メール メッセージを「取得」すると (これは rake タスクから実行されます)、SyntaxErrorで終了することがあります。

エラー メッセージを確認するには、http://pastie.org/1028479を参照してください。参照しているprocess_messageは、上記のprocess_messageと同じでは ありません。開始-レスキューがこの例外をキャッチしない理由はありますか?

0 投票する
1 に答える
788 参照

c - Ruby c 拡張機能: StandardErrors ではないものを含め、すべての例外をキャッチするにはどうすればよいですか?

ルビーでは、

のサブクラスではない例外をキャッチしませんStandardError。Cでは、

同じことをします。rescue Exception => eruby C エクステンションから (単に ではなく)どうすればよいrescue => eですか?

0 投票する
3 に答える
1730 参照

ruby-on-rails - Railsのカスタム404アクション

デフォルトのRailsは404.htmlをレンダリングし、エラー404が適切であると見なします。ただ、カスタムページで作りたいです。適切な方法を提案してください。