紙一重の積み重ね

35歳のエンジニアがなれる最高の自分を目指して、学んだことをこつこつ情報発信するブログです。

Rails

binding.pryでデバッグ中に、意図的に例外を発生させてrescueでキャッチする方法 #Rails5

やりたいこと binding.pryでデバッグ中に、rescueで実装した例外処理を確認したい。 実現方法 raiseを使う。 実装例 def update @hoge ||= hoge ApplicationRecord.transaction do binding.pry # 例外発生 raise ActiveRecord::RecordInvalid.new(@hoge) @ho…

【N+1問題対策】Ransackとincludesメソッドを使ってActiveRecordの多段の関連を検索する方法 #Rails5

はじめに N+1問題を解消するために、複数の関連を持つModelをincludesメソッドで解消する方法をメモ。 実行環境 Rails5.2.0 Ransack Slim Model定義 Userに持っている名称と、Corporationに持っている名称を取得したい。 class User < ApplicationRecord has…

【Rails5.2.0】ActiveRecord::DangerousAttributeError association is defined by Active Record. が発生したときの対処法 #Rails #ActiveRecord

はじめに Rails5.2.0でアプリケーションを開発中に見慣れないエラーが出たのでメモ。 実行環境 Rails5.2.0 ActiveRecord5.2.0 PostgreSQL 9.6 発生したエラー ActiveRecord::DangerousAttributeError association is defined by Active Record. Check to mak…

【ActiveRecord5.2.0】JoinDependencyのコンストラクタの引数の仕様がいろいろ変わっている事に気づかず、3日くらいハマった話。#Rails #ActiveRecord

はじめに Rails5.1.1で動かしていたプログラムを、Rails5.2.0で動かしたら、JoinDependency.newでエラーが発生した。 いろいろ回り道して調べた結果、ここ3日くらいハマってしまったのでメモ。 発生したエラー wrong number of arguments (given 3, expected…