[解決済み] ActiveRecord::RecordNotFoundを取得するRails検索
2022-03-03 10:05:24
質問
モデル内に "belongs to" を含むテーブルがあります。 このテーブルは、2つのテーブルをリンクするためにxx_idフィールドを含んでいます。
しかし、xx_idが空白になることがあります。 その場合、ActiveRecord::RecordNotFoundが表示されます。 エラーではなく、このフィールドを空白で表示させたいのです。
何かいい方法はないでしょうか?
解決方法は?
Railsは常に
ActiveRecord::RecordNotFound
を使用すると、例外が発生します。
find
メソッドを使用します。は
find_by_*
を返します。
nil
レコードが見つからなかったとき
は ActiveRecordのドキュメント が教えてくれる。
RecordNotFound - Findメソッドに応答したレコードがありません。検索メソッドに応答したレコードはありません。 指定された ID の行が存在しないか、または指定された ID の行が 追加された制限事項です。find 呼び出しの中にはこの例外を送出しないものもあります。 は何も見つからなかったことを意味するので、そのドキュメントを確認してください。 を使用します。
を返したい場合
nil
レコードが見つからない場合の例外処理は、次のようにすればよい。
begin
my_record = Record.find params[:id]
rescue ActiveRecord::RecordNotFound => e
my_record = nil
end
関連
-
[解決済み】Bundler: コマンドが見つからない
-
[解決済み】Rails。Ruby on Railsの移行でデータベースカラムの名前を変更するにはどうすればよいですか?
-
[解決済み】gemのインストールができない - gemネイティブ拡張の構築に失敗 - そのようなファイルをロードできない -- mkmf (LoadError)
-
[解決済み] Ruby:Rubyの配列にinclude.の反対はある?
-
[解決済み] エラーが発生しました。pgsqlをrailsで動作させようとすると、Peer authentication failed for user "postgres" と表示されます。
-
[解決済み] Railsの:includeと:joinsの比較
-
[解決済み】Railsの認証トークンを理解する
-
[解決済み】ActiveRecordのFloatとDecimalの比較
-
[解決済み】Railsでフルカスタマイズされた検証エラーメッセージ
-
[解決済み】ActiveRecord::ReadOnlyRecordのエラーの原因は何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】ActionController::InvalidAuthenticityTokenについて
-
[解決済み] Railsサーバーがポートはすでに使用されていると言う、そのプロセスを殺すにはどうすればよいですか?
-
[解決済み】PG::ConnectionBad: fe_sendauth: パスワードが供給されない
-
[解決済み] どのようにrailsでラジオボタンを正しく使用するには?
-
[解決済み] Ruby on Railsのためにnetbeansを構成する方法は?
-
[解決済み] Railsでpng画像を文字列形式で表示するには?
-
[解決済み] RoRにおけるSpringサーバーの機能とは?
-
[解決済み] gemのアップデート後、"Asset was not declared to be precompiled in production "でテストが失敗する。
-
[解決済み] rails consoleを起動するとRailsのイニシャライザーが呼ばれる?
-
[解決済み] レイル 4 radio_button_tag default not selected