Ruby on Rails 1.9.3 - модель сквозного представления не обновляется после добавления одного дополнительного поля в модель - PullRequest
0 голосов
/ 30 сентября 2018

Я пытаюсь реализовать Оптимистическую блокировку для состояния гонки.Для этого я добавил дополнительный столбец lock_version в Продукте: модель через миграцию.И переходя на attr_accessible :lock_version.Я могу обновить модель через консоль rails, однако через View я не могу обновить модель.

Product: Новое поле модели:

#  lock_version                       :integer(4)      default(0), not null

Передача lock_version в Product:Модель:

 attr_accessible :lock_version

Передать его как скрытое поле при просмотре / редактировании:

form.hidden_field :lock_version

Продукт: Контроллер модели:

 def update
   ...
  @product.update_with_conflict_validation(params[:car])
 end

Внутри продукта: Модель:

  def update_with_conflict_validation(*args)
    update_attributes(*args)
  rescue ActiveRecord::StaleObjectError
    errors.add :base, "This record changed while you are editing."
    false
  end

Я использую версию Ruby

Loading development environment (Rails 3.2.22.4)
irb(main):001:0> RUBY_VERSION
=> "1.9.3"

Пожалуйста, дайте мне знать, почему я не могу обновить модель через UI / View, но могу обновить через консоль rails.

Ссылка: https://www.youtube.com/watch?v=dcfP37d8-ZI

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...