Увеличение счетчика в базе данных

У меня есть поле, называемое ads_counter в моей базе данных, и мне нужно каждый раз увеличивать его значение при рендеринге этого объявления.

Я попытался написать собственный метод и использовать его в контроллере, ответственном за эти данные, но это не сработало. Существуют ли встроенные методы для увеличения значения поля в базе данных?

Ответ 1

Да, есть метод increment, который вы можете вызвать в своем ActiveRecord.

Для справки: increment

Edit:

Чтобы сохранить его, используйте increment!

Вы можете использовать его следующим образом:

instance.increment!(:ads_counter)

Он автоматически увеличивается на 1

instance.increment!(:ads_counter, <number>)

Он увеличивается с помощью числа

Ответ 2

У вас есть метод increment!, который увеличивает атрибут и сохраняет запись

your_object.increment!(:ads_counter)

Поместите этот код в метод show вашего контроллера.