Как массово назначить защищенные атрибуты в миграции без изменения модели

Я использую Rails 3.2

Существует ли специальная команда для назначения защищенного атрибута в процессе миграции без изменения модели с помощью оператора attr_accessible.

У меня есть атрибут "pub_convention_id", который должен оставаться защищенным в производственном режиме.

Тем не менее, мне нужно обновить его значение во время миграции. Вот почему я получаю это "известное сообщение": Can't mass-assign protected attributes: pub_convention_id

Поэтому я спрашиваю: есть ли специальное утверждение для временного отключения защиты от массовых назначений (например, в блоке)?

Это важная часть моего файла миграции:

ProjEncaissementCofin.all.each do |proj_encaissement_cofin|
  proj_encaissement_cofin.update_attributes! :pub_convention_id => 1
end

Спасибо за вашу помощь

1 ответ

Решение
proj_encaissement_cofin.pub_convention_id = 1
proj_encaissement_cofin.save!

или же

proj_encaissement_cofin.assign_attributes({ pub_contention_id: 1 }, without_protection: true)
proj_encaissement_cofin.save!
Другие вопросы по тегам