Можете да използвате метода на класа increment_counter
:
Customer.increment_counter :counter, customer
Това ще създаде нещо като:
UPDATE `customers` SET `counter` = COALESCE(`counter`, 0) + 1 WHERE (`customers`.`id` = 53)
(трябва да подадете или идентификатор, или екземпляр на класа в този метод (customer
) за разлика от customer.increment!(:counter)
метод, който не е атомен)