Неопределенный метод `параноик?' для ноля:NilClass

Я использую gem 'paranoia', '~> 1.0' в моем rails 3.2.x приложение. установлена ​​версия паранойи 1.3.3

Я получаю эту ошибку, когда я делаю рекурсивный: правда, я пытался

user.restore! recursive: true

а также

User.find(user.id, recursive: true)

Я получаю ту же ошибку.

2 ответа

Похоже, ошибка с самоцветом паранойи, которая исправлена ​​в более поздней версии. Эта ошибка возникает, когда ассоциация равна нулю.

Вы можете сравнить соответствующий код между версиями здесь

Ваша версия: https://github.com/radar/paranoia/blob/v1.3.3/lib/paranoia.rb#LC89

Последнее: https://github.com/radar/paranoia/blob/rails4/lib/paranoia.rb#LC107

В основном они делают нулевую проверку в последней версии.

destroyed_associations.each do |association|
      association_data = send(association.name)

      unless association_data.nil? #this condition is missing in your version

Вы можете либо исправить это, либо перейти на последнюю версию

@RodM команда перенесла патч в репо, но еще не выпустила.

Вместо этого используйте их git-репо в качестве источника драгоценных камней, используя RubyGems.

Добавить в Gemfile gem "paranoia", :github => "radar/paranoia", :branch => "rails3"

Другие вопросы по тегам