アプリで使用gem 'paranoia', '~> 1.0'
していrails 3.2.x
ます。インストールされているパラノイアのバージョンは 1.3.3 です
recursive: true を実行すると、そのエラーが発生します。
user.restore! recursive: true
と
User.find(user.id, recursive: true)
同じエラーが発生しています。
アプリで使用gem 'paranoia', '~> 1.0'
していrails 3.2.x
ます。インストールされているパラノイアのバージョンは 1.3.3 です
recursive: true を実行すると、そのエラーが発生します。
user.restore! recursive: true
と
User.find(user.id, recursive: true)
同じエラーが発生しています。
paranoia gem のバグのようですが、後のバージョンで修正されています。関連付けが nil の場合、このエラーが発生します。
ここでバージョン間の関連コードを比較できます
あなたのバージョン: https://github.com/radar/paranoia/blob/v1.3.3/lib/paranoia.rb#LC89
最新: https://github.com/radar/paranoia/blob/rails4/lib/paranoia.rb#LC107
基本的に、彼らは最新バージョンで null チェックを行っています。
destroyed_associations.each do |association|
association_data = send(association.name)
unless association_data.nil? #this condition is missing in your version
パッチを適用するか、最新バージョンに移行できます