В Rails есть способ, которым я могу сделать вызов метода на основе изменения в базе данных? Например, скажем, у меня есть два класса: Products
и Orders
.Rails Методы, которые называют себя
Заказы есть три возможных значения перечислений:
class Order < ActiveRecord::Base
enum status: [:pending, :processing,:shipped]
belongs_to :products
end
Я хотел бы партия процесс Orders
так, когда продукт имеет 50 заказов, я хочу, чтобы установить все заказы, связанные с ним обработаны. Orders
по умолчанию :pending
. Изменить заказ :processing
Я бы назвал order.processing!
. Я мог бы написать метод в модель таких продуктов, как:
def process_orders
if self.orders.count=50
self.orders.each do |order|
order.processing!
end
end
Проблема в том, что я должен был бы вызвать метод process_orders
для его выполнения, есть в любом случае я мог бы сделать это автоматически выполнить один раз продукт имеет 50 заказов?