модуль ActiveRecord::Locking::Optimistic::ClassMethods
Константы
- DEFAULT_LOCKING_COLUMN
Открытые методы экземпляра
# File activerecord/lib/active_record/locking/optimistic.rb, line 145 def locking_column @locking_column = DEFAULT_LOCKING_COLUMN unless defined?(@locking_column) @locking_column end
Столбец версии, используемый для оптимистичной блокировки. По умолчанию lock_version.
# File activerecord/lib/active_record/locking/optimistic.rb, line 139 def locking_column=(value) reload_schema_from_cache @locking_column = value.to_s end
Установить столбец для использования при оптимистичной блокировке. По умолчанию lock_version.
# File activerecord/lib/active_record/locking/optimistic.rb, line 134 def locking_enabled? lock_optimistically && columns_hash[locking_column] end
Возвращает true, если флаг lock_optimistically установлен в значение true (по умолчанию) и таблица содержит столбец locking_column (по умолчанию lock_version).
# File activerecord/lib/active_record/locking/optimistic.rb, line 151 def reset_locking_column self.locking_column = DEFAULT_LOCKING_COLUMN end
Сбросить столбец, используемый для оптимистичной блокировки, обратно к значению по умолчанию lock_version.
# File activerecord/lib/active_record/locking/optimistic.rb, line 157 def update_counters(id, counters) counters = counters.merge(locking_column => 1) if locking_enabled? super end
Убедитесь, что столбец версии блокировки обновляется при обновлении счётчиков.
Вызывает метод суперкласса
© 2004–2018 David Heinemeier Hansson
Licensed under the MIT License.