Увеличение счетчика в базе данных
У меня есть поле, называемое 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
вашего контроллера.