В моем обозревателе я пытаюсь написать метод для продукта, чтобы «взглянуть на себя», а затем найти тот же продукт, в котором поле :price
является единственным отличием. Другими словами, я пытаюсь уведомить пользователя, если он подписывается на продукт по более низким ценам.
Вот моя таблица продуктов:
create_table :products do |t|
t.string :name
t.decimal :price
t.integer :user_id
t.integer :store_id
t.boolean :watch_price
end
И тогда у меня есть наблюдатель:
class ProductObserver < ActiveRecord::Observer
def after_update(product)
if product.watch_price
end
end
end
Таким образом, если логическое значение :watch_price
истинно, то пользователь подписался на этот продукт. Я поместил его в after_update(product)
, потому что я хочу, чтобы пользователи могли установить флажок watch_price
, а затем он мгновенно выполняет работу Cron, а затем каждый час после этого в базе данных.
Проблема, с которой я сталкиваюсь, заключается в том, чтобы заставить Продукт самостоятельно оценивать себя и искать продукты, которые точно такие же, с единственным отличием - это поле :price
. Как это будет сделано?
Заранее спасибо, новичок мог бы помочь!