У меня есть приложение, отлично работающее на Rails 4.0.3. Сегодня, когда я пытаюсь перейти на Rails 4.2.0, произошла ошибка с кодом ниже:
def self.create_comp(comp)
c= Competition.new(comp[:competition])
# add activities
comp[:activities].each do |act|
c.activities.new(act)
end
c.save!
c
end
И сообщение об ошибке:
ActiveModel::ForbiddenAttributesError (ActiveModel::ForbiddenAttributesError):
Что делает эта функция, так это сохраняет конкуренцию со связанными с ней действиями в транзакции.
У меня есть следующая строка, определенная как ассоциация:
has_many :activities, autosave: true
Так что же было изменено в Rails 4.2, чтобы вызвать это исключение?