Sha256: 678903cbc302bcd25d95f5e448100fdac99d9cee1d4214fc5e88539db36757f6
Contents?: true
Size: 803 Bytes
Versions: 18
Compression:
Stored size: 803 Bytes
Contents
class Piggybak::Sellable < ActiveRecord::Base belongs_to :item, :polymorphic => true, :inverse_of => :piggybak_sellable attr_accessible :sku, :description, :price, :quantity, :active, :unlimited_inventory, :item_id, :item_type attr_accessible :item # to allow direct assignment from code or console validates_presence_of :sku validates_uniqueness_of :sku validates_presence_of :description validates_presence_of :price validates_presence_of :item_type validates_numericality_of :quantity, :only_integer => true, :greater_than_or_equal_to => 0 has_many :line_items, :as => :reference, :inverse_of => :reference def admin_label "Sellable: #{self.description}" end def update_inventory(purchased) self.update_attribute(:quantity, self.quantity + purchased) end end
Version data entries
18 entries across 18 versions & 1 rubygems