隔离创建和更新文章的初始数量

时间:2019-02-15 22:18:48

标签: ruby-on-rails ruby

创建商品时,我会设置数量。

每次出售商品,其数量都会通过一种方法减少。 我需要保留我的初始库存,销售数量和剩余库存...

所以我的问题是:

如何保留初始数量,以及我可以在更新时添加的数量?

# article.rb
before_create :quantity_on_create
before_update :quantity_on_update

def quantity_on_create
  self.quantity
end

def quantity_on_update
    quantity_on_create += self.quantity
end

quantity_on_create仍然为零?

1 个答案:

答案 0 :(得分:1)

也许您可以考虑为quantity_stock添加一个附加属性

# article.rb
before_create :quantity_on_create
before_update :quantity_on_update

def quantity_on_create
  self.quantity_stock = self.quantity = 10 # initial value
end

def quantity_on_update
    if self.quantity > 0
      self.quantity -= 1
    else
      errors.add(:base, 'out of stock')
      throw(:abort)
    end
end